@layer reset, base, component, utility;
@layer reset {
  *,*::before,*::after{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body,h1,h2,h3,p{margin:0}
  button,input,textarea{font:inherit}
  button,a{-webkit-tap-highlight-color:transparent}
}
@layer base {
  :root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark;
    --bg:#0a1020;--bg-alt:#101a2d;--panel:#131f33;--panel-strong:#1a2840;--text:#f2f7ff;--muted:#9baec5;--border:rgba(196,215,240,.12);
    --accent:#64d7fd;--accent-soft:rgba(100,215,253,.17);--accent-secondary:#a0a5ff;--shadow:0 30px 90px rgba(0,0,0,.18)}
  :root[data-brand="control-center"]{--accent:#9d9cff;--accent-soft:rgba(157,156,255,.17);--accent-secondary:#58ddeb}
  :root[data-brand="home-center"]{--accent:#62e3bf;--accent-soft:rgba(98,227,191,.17);--accent-secondary:#7aa7ff}
  html{scroll-padding-top:95px}
  body{background:var(--bg);color:var(--text);line-height:1.6;min-width:320px}
  a{color:inherit;text-decoration:none}
  p{color:var(--muted)}
  h1,h2,h3{line-height:1.15;letter-spacing:-.035em;text-wrap:balance}
  h1{font-size:clamp(2.6rem,5.1vw,5.7rem);font-weight:720}
  h2{font-size:clamp(2rem,3.2vw,3.35rem);font-weight:680}
  h3{font-size:1.35rem;font-weight:660}
  button{cursor:pointer}
  ::selection{background:var(--accent);color:#101827}
  :focus-visible{outline:3px solid var(--accent);outline-offset:4px}
  .shell{width:min(1160px,calc(100% - clamp(32px,6.4vw,96px)));margin-inline:auto}
  .eyebrow{color:var(--accent);font-size:.74rem;font-weight:780;letter-spacing:.19em;line-height:1.5;text-transform:uppercase}
}
@layer component {
  .skip-link{position:absolute;z-index:100;top:-100px;left:15px;background:var(--accent);padding:12px;color:#08111f}
  .skip-link:focus{top:12px}
  .site-header{z-index:40;position:sticky;top:0;background:rgba(10,16,32,.84);border-bottom:1px solid var(--border);backdrop-filter:blur(22px)}
  .header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}
  .brand{display:inline-flex;align-items:center;gap:12px;min-width:0}
  .brand-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:13px;color:var(--accent);font-size:.93rem;font-weight:850;letter-spacing:-.05em}
  .brand-text{display:flex;flex-direction:column;font-size:1.1rem;font-weight:820;letter-spacing:-.03em;line-height:1.25}
  .brand-text small{color:var(--muted);font-size:.61rem;letter-spacing:.12em;font-weight:570;text-transform:uppercase}
  .nav{display:flex;gap:clamp(17px,2.1vw,35px);align-items:center}
  .nav>a:not(.button){font-size:.88rem;font-weight:560;color:#c5d2e4;transition:color .2s}
  .nav>a:not(.button):hover,.nav>a[aria-current]{color:var(--accent)}
  .menu-toggle{display:none;border:1px solid var(--border);border-radius:11px;color:var(--text);background:var(--panel);font-size:1.25rem;padding:4px 12px}
  .button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:14px 23px;border-radius:13px;border:1px solid transparent;font-weight:700;font-size:.87rem;min-height:49px;transition:transform .2s,background .2s,border-color .2s;white-space:nowrap}
  .button:hover:not(:disabled){transform:translateY(-2px)}
  .button:disabled{opacity:.6;cursor:wait}
  .button.small{padding:10px 17px;min-height:42px}
  .button.primary{background:var(--accent);color:#081425}
  .button.primary:hover{background:#ccf5ff}
  .button.secondary,.button.ghost{border-color:var(--border);background:rgba(255,255,255,.035);color:var(--text)}
  .button.secondary:hover,.button.ghost:hover{border-color:var(--accent)}
  .button.full{width:100%}
  .hero{position:relative;overflow:hidden;padding:82px 0 76px;background:radial-gradient(ellipse at 85% 20%,var(--accent-soft),transparent 43%),linear-gradient(180deg,#101b30,var(--bg))}
  .hero-glow{pointer-events:none;position:absolute;inset:-30% auto auto 35%;width:80%;height:100%;background:radial-gradient(circle,rgba(100,140,250,.09),transparent 65%)}
  .hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(38px,6vw,78px);align-items:center;max-width:none}
  .hero-copy{max-width:none}
  .hero-copy .eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:27px}
  .pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}
  .hero-copy h1{max-width:1060px}
  .hero-copy h1::first-letter{color:var(--accent)}
  .lead{font-size:clamp(1rem,1.5vw,1.15rem);max-width:850px;line-height:1.85;margin-top:27px}
  .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:37px}
  .hero-points{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:36px;color:#d7e2ef;font-size:.8rem}
  .hero-points span::first-letter{color:var(--accent)}
  .visual-card{align-self:stretch;min-height:410px;border:1px solid rgba(204,225,255,.18);background:linear-gradient(135deg,#182941,#0d1525);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;position:relative}
  .visual-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 55%,var(--accent-soft));pointer-events:none}
  .visual-top{position:relative;display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid var(--border);font-size:.59rem;font-weight:750;letter-spacing:.11em;color:var(--muted)}
  .window-dots{display:flex;gap:5px;margin-right:10px}.window-dots i{width:7px;height:7px;border-radius:100%;background:#6b7e9f}
  .visual-top .online{margin-left:auto;color:var(--accent)}
  .visual-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;min-height:355px;padding:24px;text-align:center}
  .visual-label{font-size:.65rem;letter-spacing:.16em;color:var(--muted)}
  .visual-core{height:205px;width:205px;margin:10px auto;display:grid;place-items:center;position:relative}
  .orbit{position:absolute;inset:12px;border:1px dashed rgba(147,198,228,.33);border-radius:50%;transform:rotate(-25deg)}
  .orbit.two{inset:35px;border-style:solid;border-color:var(--accent);opacity:.23}
  .core-glyph{height:90px;width:90px;display:grid;place-items:center;border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:0 0 80px var(--accent-soft);border-radius:30px;font-size:2rem;font-weight:900}
  .visual-pillrow{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.visual-pillrow span{border:1px solid var(--border);padding:7px 9px;border-radius:7px;color:#c7d9eb;font-size:.59rem;letter-spacing:.03em}
  .visual-inner>p{font-size:.59rem;letter-spacing:.13em;margin-top:21px}
  .section{padding-top:100px;padding-bottom:100px}
  .section-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:38px}
  .section-head h2{margin-top:14px;max-width:630px}
  .section-head>p{max-width:335px;font-size:.91rem}
  .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
  .feature-card{background:var(--panel);border:1px solid var(--border);border-radius:19px;padding:32px;min-height:315px;position:relative;transition:transform .2s,border-color .2s}
  .feature-card:hover{transform:translateY(-5px);border-color:var(--accent)}
  .feature-index{display:block;color:#7d91b0;font-size:.72rem;letter-spacing:.17em}
  .feature-icon{font-size:2.3rem;color:var(--accent);margin:25px 0 16px}
  .feature-card h3{margin:8px 0 13px}.feature-card p{font-size:.89rem;line-height:1.72}
  .feature-arrow{position:absolute;right:27px;bottom:25px;color:var(--accent);font-size:1.2rem}
  .alt-section{background:var(--bg-alt);border-block:1px solid var(--border)}
  .split-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
  .split-grid h2{margin-top:17px}.check-list p{padding:20px 0;border-bottom:1px solid var(--border);font-size:.97rem;line-height:1.8}
  .check-list p span{color:var(--accent);font-weight:750;margin-right:20px}.check-list strong{color:var(--text)}
  .contact-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:24px}
  .contact-intro{border:1px solid var(--border);background:linear-gradient(150deg,var(--panel),var(--bg-alt));border-radius:20px;padding:37px;display:flex;flex-direction:column}
  .contact-symbol{font-size:3.2rem;color:var(--accent);margin-bottom:40px}.contact-intro h3{max-width:300px;font-size:1.8rem;margin-bottom:19px}
  .contact-intro p{font-size:.92rem;line-height:1.85}.contact-foot{margin-top:auto;padding-top:42px;color:var(--muted);font-size:.78rem}.contact-foot a{color:var(--accent)}
  .surface-form,.panel{border:1px solid var(--border);border-radius:20px;background:var(--panel);padding:35px}
  form{display:flex;flex-direction:column;gap:20px}
  .form-row{display:grid;grid-template-columns:1fr;gap:15px}
  .form-note{margin-bottom:-8px;color:var(--muted);font-size:.79rem}
  label{display:flex;flex-direction:column;gap:9px;font-size:.78rem;font-weight:630;color:#d8e3f2}
  input:not([type="checkbox"]),textarea{min-width:0;width:100%;border:1px solid rgba(180,205,237,.21);border-radius:10px;background:#0d1829;padding:12px 15px;color:var(--text);resize:vertical;font-size:.88rem;line-height:1.6}
  input:focus,textarea:focus{outline:1px solid var(--accent);border-color:var(--accent)}
  input::placeholder,textarea::placeholder{color:#7588a3}
  .checkline{display:flex;flex-direction:row;align-items:flex-start;gap:12px;line-height:1.65;color:var(--muted);font-size:.75rem;font-weight:400}
  .checkline input{accent-color:var(--accent);width:17px;height:17px;flex:none;margin-top:2px}.checkline a{color:var(--accent);text-decoration:underline}
  .form-action{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.form-status{min-height:1.4rem;font-size:.81rem;color:var(--muted);overflow-wrap:anywhere}
  .form-status.success{color:#79e5bb}.form-status.error{color:#ff9a9c}
  .honeypot{position:absolute;left:-9999px;height:1px;overflow:hidden}
  .site-footer{border-top:1px solid var(--border);background:#0b1526;padding:36px 0}
  .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-inner>div:nth-child(2){display:flex;flex-wrap:wrap;gap:26px;color:var(--muted);font-size:.79rem}
  .footer-inner strong{font-weight:800}.footer-inner p{margin-top:5px;font-size:.79rem}.footer-inner a:hover{color:var(--accent)}
  .chat-wrap{position:fixed;right:clamp(15px,3vw,45px);bottom:clamp(16px,2.5vw,35px);z-index:49;display:flex;flex-direction:column;align-items:flex-end;gap:13px;max-width:calc(100vw - 30px)}
  .chat-toggle{padding:14px 20px;border:1px solid var(--accent);border-radius:30px;background:var(--accent);color:#081425;box-shadow:0 7px 30px var(--accent-soft);font-weight:790}
  .chat-panel{width:min(380px,calc(100vw - 30px));max-height:min(640px,75vh);overflow-y:auto;background:var(--panel);border-radius:18px;border:1px solid var(--border);box-shadow:0 25px 80px #0008}
  .chat-panel[hidden]{display:none}.chat-panel header{padding:18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
  .chat-panel header div{display:flex;flex-direction:column}.chat-panel small{font-size:.68rem;color:var(--muted)}.chat-close{background:transparent;border:0;color:var(--text);font-size:1.5rem}
  .chat-log{padding:17px;min-height:116px;max-height:230px;overflow-y:auto;display:flex;flex-direction:column;gap:11px}.chat-log p{font-size:.84rem;line-height:1.65}
  .chat-question{align-self:flex-end;max-width:90%;padding:10px 14px;background:var(--accent-soft);border-radius:12px;color:var(--text)}
  .chat-answer{padding:10px 14px;background:var(--bg-alt);border-radius:12px}
  .chat-panel form{padding:17px;gap:13px;border-top:1px solid var(--border)}.chat-panel .button{min-height:43px}
  .cabinet-page{min-height:70vh}.cabinet-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:18px 0 37px}
  .cabinet-heading h1,.legal-page h1{font-size:clamp(2.2rem,4.1vw,4rem)}.cabinet-heading p{margin-top:15px}
  .cabinet-welcome{background:var(--panel);border:1px solid var(--border);padding:28px 32px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:22px}
  .cabinet-welcome h2{font-size:1.6rem;margin:9px 0}.metric{display:flex;flex-direction:column;align-items:center;min-width:110px}.metric b{font-size:2.5rem;color:var(--accent)}.metric small{color:var(--muted)}
  .cabinet-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:18px}.cabinet-columns h3{margin-bottom:24px}.ticket-row{display:flex;justify-content:space-between;gap:22px;padding:17px 0;border-bottom:1px solid var(--border)}
  .ticket-row>div{display:flex;flex-direction:column}.ticket-row b{font-size:.9rem}.ticket-row small{color:var(--muted)}.ticket-row>span{font-size:.75rem;color:var(--accent)}
  .info-box{padding:25px;border:1px solid var(--border);background:var(--panel);border-radius:15px}.info-box p{margin-top:11px}
  .legal-page{max-width:950px;min-height:70vh}.legal-page h1{margin:14px 0 30px}.legal-page>p{margin:18px 0;line-height:1.9}.legal-page a:not(.button){color:var(--accent);text-decoration:underline}
  .fallback-hero{padding-block:8rem;min-height:65vh}.fallback-hero h1{margin:20px 0}.fallback-hero .button{margin-top:24px}
}
@layer utility {
  @media (max-width: 1000px){.hero-grid{grid-template-columns:1fr}.hero{padding:70px 0}.visual-card{max-width:600px;min-height:325px}.visual-inner{min-height:270px}.hero-points{margin-top:35px}.section{padding-top:75px;padding-bottom:75px}.feature-card{padding:25px}.split-grid{gap:40px}}
  @media (max-width: 720px){
    .header-inner{height:70px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:70px;padding:22px clamp(20px,6vw,50px);background:var(--bg-alt);flex-direction:column;align-items:stretch;gap:20px;box-shadow:0 14px 34px #0006}.nav.open{display:flex}
    .hero{padding:64px 0}.hero-actions{gap:10px}.hero-actions .button{width:100%}.hero-points{gap:12px;font-size:.74rem}
    .section-head,.split-grid,.contact-layout,.cabinet-columns{display:grid;grid-template-columns:1fr;gap:22px}
    .section-head>p{max-width:unset}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:245px}.contact-intro{min-height:270px}
    .form-row{grid-template-columns:1fr}.surface-form,.panel,.contact-intro{padding:24px}.footer-inner,.cabinet-heading{align-items:flex-start;flex-direction:column}
    .chat-toggle span{display:none}.chat-toggle{width:49px;height:49px;padding:0;font-size:1.25rem}
  }
  @media (max-width: 420px){.visual-card{min-height:280px}.visual-inner{min-height:240px}.visual-core{width:160px;height:165px}.visual-top{padding:14px;font-size:.53rem}.hero-points{display:grid}.check-list p span{margin-right:8px}.button{white-space:normal;text-align:center}}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
  @media (prefers-color-scheme:light){
    :root{color-scheme:light;--bg:#f4f7fc;--bg-alt:#e9eef7;--panel:#fff;--panel-strong:#f0f4fc;--text:#1c2e49;--muted:#506381;--border:rgba(45,76,117,.16);--shadow:0 22px 75px #10284722}
    .site-header{background:#f5f8ffed}.nav>a:not(.button){color:#35506d}.hero{background:radial-gradient(ellipse at 85% 20%,var(--accent-soft),transparent 43%),linear-gradient(180deg,#edf5ff,var(--bg))}
    .visual-card{color:#f2f7ff}.visual-card p{color:#abc0d7}.visual-label{color:#abc0d7}.hero-points{color:var(--text)}
    .site-footer{background:#e4edfa}.surface-form input:not([type="checkbox"]),.surface-form textarea,.panel input,.panel textarea,.chat-panel textarea{color:var(--text);background:#f3f7fd}
  }
}

/* Dev Fabric identity: editorial sections, graphite, warm white and acid lime */
:root[data-brand="dev-fabric"] {
  color-scheme: light; --bg:#f5f4ef; --bg-alt:#eae9e1; --panel:#fffefa; --panel-strong:#f0efe7;
  --text:#1d2430; --muted:#646b76; --border:rgba(29,36,48,.14); --accent:#c4f65b;
  --accent-soft:rgba(196,246,91,.26); --accent-secondary:#7058cf; --shadow:0 24px 70px rgba(30,38,47,.12);
}
:root[data-brand="dev-fabric"] .site-header { background:rgba(245,244,239,.92); border-color:var(--border); }
:root[data-brand="dev-fabric"] .brand-icon { background:var(--text); border-color:var(--text); color:var(--accent); border-radius:50%; }
:root[data-brand="dev-fabric"] .nav>a:not(.button) { color:#4a515c; }
:root[data-brand="dev-fabric"] .nav>a:not(.button):hover { color:#111722; }
:root[data-brand="dev-fabric"] .button.primary { color:#18200f; }
:root[data-brand="dev-fabric"] .button.primary:hover { background:#d7ff8a; }
:root[data-brand="dev-fabric"] .button.secondary { border-color:var(--border); color:var(--text); background:transparent; }
:root[data-brand="dev-fabric"] .site-footer { background:#1d2430; color:#f3f3ed; }
:root[data-brand="dev-fabric"] .site-footer p,:root[data-brand="dev-fabric"] .site-footer a,:root[data-brand="dev-fabric"] .site-footer span { color:#bdc3cb; }
.df-hero { position:relative; overflow:hidden; padding:clamp(56px,6.4vw,88px) 0 clamp(50px,6vw,82px); background:radial-gradient(ellipse at 82% 42%,rgba(196,246,91,.28),transparent 32%),linear-gradient(118deg,#f5f4ef 0%,#f5f4ef 52%,#e9eee0 100%); }
.df-hero-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr); gap:clamp(30px,5vw,78px); align-items:center; }
.df-hero-copy .eyebrow { display:flex; align-items:center; gap:11px; margin-bottom:24px; color:#52602e; }
:root[data-brand="dev-fabric"] .pulse { background:#8cba31; box-shadow:0 0 0 5px rgba(196,246,91,.35); }
.df-hero-copy h1 { max-width:680px; font-size:clamp(2.15rem,3.4vw,3.4rem); line-height:1.1; letter-spacing:-.05em; }
.df-hero-copy h1::first-letter { color:inherit; }
.df-hero-copy .lead { max-width:680px; color:#555d68; font-size:clamp(.98rem,1.2vw,1.08rem); line-height:1.75; margin-top:20px; }
.df-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:25px; }
.df-hero-meta { display:flex; align-items:center; gap:12px; margin-top:24px; color:#69717b; font-size:.8rem; }
.df-hero-meta i { color:#788c43; font-style:normal; }
.df-hero-art { min-height:430px; position:relative; isolation:isolate; display:grid; place-items:center; color:#647b34; }
.df-hero-art::before { content:""; position:absolute; width:min(82%,350px); aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 42% 40%,#faffee 0,#ecf4d7 48%,rgba(196,246,91,.18) 70%,transparent 71%); z-index:-1; }
.df-art-caption { position:absolute; top:5%; right:4%; color:#687449; font-size:.64rem; font-weight:750; letter-spacing:.13em; }
.df-connectors { width:100%; height:auto; max-height:430px; position:absolute; inset:0; margin:auto; color:#849b53; overflow:visible; }
.df-art-core { width:142px; height:142px; display:flex; flex-direction:column; justify-content:center; align-items:center; border-radius:50%; background:#1d2430; color:#fffefa; box-shadow:0 18px 45px rgba(25,35,24,.18); transform:rotate(-7deg); }
.df-art-core strong { color:var(--accent); font-size:2.4rem; line-height:1; letter-spacing:-.08em; }
.df-art-core span { margin-top:10px; font-size:.64rem; color:#e3e8da; }
.df-art-node { position:absolute; display:flex; align-items:center; gap:8px; padding:9px 12px; border:1px solid rgba(29,36,48,.15); border-radius:9px; background:#fffefa; color:#313a43; box-shadow:0 8px 25px rgba(38,45,34,.07); font-size:.76rem; }
.df-art-node b { color:#789b30; font-size:.63rem; }
.df-node-1 { top:17%; left:7%; }.df-node-2 { top:17%; right:3%; }.df-node-3 { bottom:18%; left:5%; }.df-node-4 { bottom:18%; right:4%; }
.df-art-dot { position:absolute; top:48%; right:7%; width:11px; height:11px; border-radius:50%; background:#7058cf; box-shadow:0 0 0 6px rgba(112,88,207,.12); }
.df-capability-band { border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:#eeeee7; }
.df-capability-inner { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.df-capability-inner>span { color:#858b8e; font-size:.66rem; font-weight:800; letter-spacing:.14em; }
.df-capability-inner>b { font-size:.85rem; font-weight:700; color:#303844; }.df-capability-inner>i { width:5px; height:5px; border-radius:50%; background:#93b54b; }
.df-section { padding-top:clamp(56px,6vw,88px); padding-bottom:clamp(56px,6vw,88px); }
.df-section-head { align-items:end; margin-bottom:28px; }
.df-section-head .eyebrow { color:#748d3b; }
.df-section-head h2 { max-width:700px; margin-top:14px; font-size:clamp(2rem,3.8vw,3.4rem); letter-spacing:-.055em; }
.df-section-head>p { max-width:390px; color:#646b76; font-size:.95rem; line-height:1.75; }
.df-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.df-service-card { min-height:380px; padding:clamp(23px,2.5vw,34px); display:flex; flex-direction:column; background:#fffefa; border:1px solid var(--border); border-radius:5px; position:relative; }
.df-service-card::before { content:""; position:absolute; inset:0 0 auto; height:4px; background:#c4f65b; }.df-service-card:nth-child(2)::before { background:#7058cf; }.df-service-card:nth-child(3)::before { background:#34404e; }
.df-service-top { display:flex; align-items:center; justify-content:space-between; color:#777f85; font-size:.66rem; font-weight:800; letter-spacing:.12em; }
.df-service-glyph { color:#728e3c; font-size:1.3rem; }.df-service-featured .df-service-glyph { color:#7058cf; }
.df-service-card h3 { margin:34px 0 14px; font-size:1.5rem; letter-spacing:-.045em; }.df-service-card>p { color:#626a74; font-size:.88rem; line-height:1.8; }
.df-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:auto; padding-top:24px; }.df-tags span { padding:7px 9px; border:1px solid var(--border); border-radius:4px; color:#5d6670; font-size:.69rem; }
.df-process-section { padding:clamp(60px,6.2vw,90px) 0; background:#1d2430; color:#f5f4ef; }
.df-process-section .df-section-head .eyebrow { color:#c4f65b; }.df-process-section .df-section-head>p { color:#c0c5cb; }.df-process-section .df-section-head h2 { color:#f5f4ef; }
.df-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid rgba(245,244,239,.22); }
.df-steps article { padding:25px 22px 22px 0; border-bottom:1px solid rgba(245,244,239,.14); }.df-steps article+article { padding-left:22px; border-left:1px solid rgba(245,244,239,.15); }
.df-steps article>span { color:#c4f65b; font-size:.75rem; font-weight:800; letter-spacing:.12em; }.df-steps h3 { margin:25px 0 11px; color:#f8f8f2; font-size:1.14rem; }.df-steps p { color:#bfc5ce; font-size:.84rem; line-height:1.75; }
.df-example { display:grid; grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr); gap:30px 45px; align-items:center; margin-top:45px; padding:clamp(25px,4vw,48px); background:#2a3341; border:1px solid rgba(245,244,239,.14); border-radius:5px; }
.df-example-copy .eyebrow { color:#c4f65b; }.df-example-copy h3 { margin:14px 0; font-size:clamp(1.4rem,2.3vw,2rem); color:#f6f5ef; }.df-example-copy>p:last-child { color:#c1c7cf; font-size:.9rem; line-height:1.8; }
.df-route { display:flex; align-items:center; justify-content:center; gap:10px; }.df-route>div { min-width:105px; display:flex; flex-direction:column; gap:5px; }.df-route small { color:#c4f65b; font-size:.58rem; letter-spacing:.1em; }.df-route b { color:#f5f4ef; font-size:.95rem; }.df-route span { color:#b7c0ca; font-size:.66rem; line-height:1.4; }.df-route>i { color:#c4f65b; font-style:normal; }
.df-example-note { grid-column:1/-1; margin-top:-9px; color:#9fa9b5; font-size:.73rem; }
.df-approach { padding-top:clamp(64px,7vw,96px); padding-bottom:clamp(64px,7vw,96px); display:grid; grid-template-columns:1fr 1fr; gap:clamp(35px,8vw,120px); align-items:center; }
.df-approach-mark { min-height:310px; padding:clamp(28px,4vw,50px); background:#c4f65b; display:flex; flex-direction:column; justify-content:space-between; }
.df-approach-mark>span { color:#52662d; font-size:.66rem; font-weight:800; letter-spacing:.15em; }.df-approach-mark strong { color:#20282e; font-size:clamp(2rem,4vw,3.7rem); line-height:1.04; letter-spacing:-.06em; }.df-approach-mark em { color:#7058cf; font-style:normal; }
.df-approach-copy .eyebrow { color:#748d3b; }.df-approach-copy h2 { margin:14px 0 17px; font-size:clamp(1.8rem,3vw,2.6rem); }.df-approach-copy>p:not(.eyebrow) { color:#606873; line-height:1.8; }
.df-approach-copy ul { margin:22px 0 0; padding:0; list-style:none; }.df-approach-copy li { padding:11px 0 11px 23px; border-top:1px solid var(--border); color:#333c46; font-size:.87rem; position:relative; }.df-approach-copy li::before { content:""; position:absolute; left:1px; top:19px; width:8px; height:8px; border-radius:50%; background:#91b842; }
.df-contact-section { padding-top:16px; padding-bottom:82px; }.df-contact-intro { background:#1d2430; border-color:#1d2430; }.df-contact-intro h3 { color:#f5f4ef; }.df-contact-intro p { color:#c1c7cf; }.df-contact-intro .contact-foot { color:#aeb6c0; }.df-contact-intro .contact-foot a { color:#c4f65b; }
:root[data-brand="dev-fabric"] .surface-form { background:#fffefa; border-color:var(--border); }
:root[data-brand="dev-fabric"] .surface-form label { color:#414a54; }
:root[data-brand="dev-fabric"] .surface-form input:not([type="checkbox"]),:root[data-brand="dev-fabric"] .surface-form textarea { color:var(--text); background:#f8f8f3; border-color:var(--border); }
:root[data-brand="dev-fabric"] .surface-form input::placeholder,:root[data-brand="dev-fabric"] .surface-form textarea::placeholder { color:#969ca1; }
@media (max-width:1000px) {
 .df-hero-grid { grid-template-columns:1fr; }.df-hero-copy { max-width:850px; }.df-hero-art { width:min(100%,620px); min-height:370px; margin-inline:auto; }
 .df-service-grid { grid-template-columns:1fr 1fr; }.df-service-card:last-child { grid-column:1/-1; min-height:300px; }.df-steps { grid-template-columns:1fr 1fr; }
 .df-steps article:nth-child(3) { border-left:0; padding-left:0; }.df-example { grid-template-columns:1fr; }
}
@media (max-width:720px) {
 :root[data-brand="dev-fabric"] .header-inner { height:72px; }:root[data-brand="dev-fabric"] .nav { background:#f5f4ef; }:root[data-brand="dev-fabric"] .menu-toggle { color:var(--text); background:#fffefa; border-color:var(--border); }
 .df-hero { padding-top:58px; }.df-hero-copy h1 { font-size:clamp(2.15rem,7.5vw,3rem); }.df-hero-art { min-height:310px; }
 .df-capability-inner { justify-content:flex-start; padding-block:18px; gap:12px 17px; }.df-capability-inner>span { width:100%; }.df-capability-inner>i { display:none; }
 .df-service-grid { grid-template-columns:1fr; }.df-service-card,.df-service-card:last-child { grid-column:auto; min-height:0; }
 .df-steps { grid-template-columns:1fr; }.df-steps article,.df-steps article+article,.df-steps article:nth-child(3) { padding:22px 0; border-left:0; }.df-steps h3 { margin:14px 0 8px; }
 .df-example { gap:24px; }.df-route { align-items:stretch; flex-direction:column; }.df-route>i { transform:rotate(90deg); align-self:flex-start; margin-left:45px; }.df-example-note { margin-top:0; }
 .df-approach { grid-template-columns:1fr; }.df-approach-mark { min-height:260px; }.df-contact-section { padding-bottom:60px; }
}
@media (max-width:420px) {
 .df-hero-meta { align-items:flex-start; flex-direction:column; gap:5px; }.df-hero-meta i { transform:rotate(90deg); margin-left:8px; }
 .df-art-node { gap:5px; padding:7px; font-size:.65rem; }.df-node-1,.df-node-3 { left:0; }.df-node-2,.df-node-4 { right:0; }
 .df-art-core { width:122px; height:122px; }.df-route>div { min-width:0; }.df-capability-inner>b { font-size:.78rem; }
}

/* Public examples describe client facing outcomes, not our internal delivery process. */
.df-solution-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.df-solution-card { min-height:230px; padding:clamp(22px,3vw,34px); border:1px solid rgba(245,244,239,.17); background:#252f3d; display:flex; flex-direction:column; }
.df-solution-card>span { color:#c4f65b; font-size:.64rem; font-weight:800; letter-spacing:.15em; }
.df-solution-card h3 { margin:22px 0 10px; color:#f6f5ef; font-size:1.3rem; }
.df-solution-card p { color:#c1c7cf; font-size:.86rem; line-height:1.75; }
.df-solution-card small { margin-top:auto; padding-top:18px; color:#c4f65b; font-size:.68rem; letter-spacing:.04em; }
.df-solution-note { margin-top:18px; color:#aeb7c2; font-size:.75rem; line-height:1.6; }
@media (max-width:720px) { .df-solution-grid { grid-template-columns:1fr; } .df-solution-card { min-height:0; } .df-solution-card h3 { margin-top:15px; } }

.df-contact-prompts { margin:18px 0 0; padding:0; list-style:none; display:grid; gap:11px; }
.df-contact-prompts li { position:relative; padding-left:19px; color:#e0e4e8; font-size:.82rem; line-height:1.55; }
.df-contact-prompts li::before { content:""; position:absolute; left:0; top:.55em; width:7px; height:7px; border-radius:50%; background:#c4f65b; }
.df-contact-hint { margin:18px 0 0; color:#abb4bf !important; font-size:.75rem !important; line-height:1.6; }

/* Control Center: technical control plane in graphite, violet and cyan */
:root[data-brand="control-center"] { color-scheme:dark; --bg:#0d1220; --bg-alt:#141c2c; --panel:#182235; --panel-strong:#202c42; --text:#eef3fb; --muted:#a3aec1; --border:rgba(190,205,230,.15); --accent:#a797ff; --accent-soft:rgba(167,151,255,.18); --accent-secondary:#4ce0d2; --shadow:0 25px 80px rgba(0,0,0,.26); }
:root[data-brand="control-center"] .site-header { background:rgba(13,18,32,.91); }
:root[data-brand="control-center"] .brand-icon { background:linear-gradient(140deg,#a797ff,#4ce0d2); color:#101828; border:0; border-radius:12px 12px 12px 4px; }
:root[data-brand="control-center"] .hero-glow { display:none; }
:root[data-brand="control-center"] .button.primary { background:#a797ff; color:#101324; }
:root[data-brand="control-center"] .button.primary:hover { background:#c4baff; }
:root[data-brand="control-center"] .site-footer { background:#080c15; }
.cc-hero { position:relative; overflow:hidden; padding:clamp(52px,6vw,82px) 0; background:radial-gradient(ellipse at 82% 42%,rgba(76,224,210,.12),transparent 28%),linear-gradient(125deg,#0d1220,#14192a 62%,#191832); }
.cc-hero-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr); gap:clamp(35px,5vw,75px); align-items:center; }
.cc-hero-copy .eyebrow { display:flex; align-items:center; gap:11px; margin-bottom:24px; color:#b6abff; }
:root[data-brand="control-center"] .pulse { background:#a797ff; box-shadow:0 0 0 5px rgba(167,151,255,.18); }
.cc-hero-copy h1 { max-width:730px; font-size:clamp(2.05rem,3.4vw,3.25rem); line-height:1.12; letter-spacing:-.055em; }
.cc-hero-copy .lead { max-width:650px; margin-top:22px; color:#b5bfd0; font-size:1.03rem; line-height:1.8; }
.cc-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:29px; }
.cc-hero-note { margin-top:28px; color:#8995ad; font-size:.68rem; letter-spacing:.14em; }
.cc-map { min-height:400px; position:relative; isolation:isolate; display:grid; place-items:center; color:#9b91ff; }
.cc-map-halo { position:absolute; width:80%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#25224a 0%,rgba(38,44,73,.5) 44%,transparent 72%); z-index:-1; }
.cc-map svg { position:absolute; width:100%; max-height:420px; inset:0; margin:auto; }
.cc-map-core { width:138px; height:138px; display:flex; flex-direction:column; justify-content:center; align-items:center; border:1px solid rgba(167,151,255,.7); border-radius:26px; background:linear-gradient(145deg,#242147,#162738); box-shadow:0 15px 70px rgba(102,91,220,.25); transform:rotate(-4deg); }
.cc-map-core b { color:#d0c8ff; font-size:2.3rem; letter-spacing:-.08em; }.cc-map-core span { color:#a8b5c9; font-size:.67rem; }
.cc-map-node { position:absolute; display:flex; align-items:center; gap:9px; padding:10px 14px; border:1px solid rgba(185,198,225,.17); border-radius:8px; background:#171e30; color:#dce5f2; box-shadow:0 12px 30px rgba(0,0,0,.18); font-size:.78rem; }
.cc-map-node b { color:#4ce0d2; font-size:.64rem; }.cc-n1 { top:15%; left:1%; }.cc-n2 { top:15%; right:0; }.cc-n3 { bottom:16%; left:0; }.cc-n4 { bottom:16%; right:0; }
.cc-map-label { position:absolute; top:3%; right:0; color:#929bb0; font-size:.59rem; letter-spacing:.12em; }
.cc-ribbon { border-block:1px solid var(--border); background:#121a29; }.cc-ribbon>.shell { min-height:72px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; }.cc-ribbon span { color:#d4dbea; font-size:.78rem; font-weight:650; }.cc-ribbon i { width:5px; height:5px; border-radius:50%; background:#4ce0d2; }
.cc-section { padding-top:clamp(48px,5vw,72px); padding-bottom:clamp(48px,5vw,72px); }.cc-section-head { align-items:end; margin-bottom:30px; }.cc-section-head .eyebrow { color:#b6abff; }.cc-section-head h2 { max-width:700px; margin-top:10px; font-size:clamp(1.65rem,2.8vw,2.65rem); line-height:1.15; }.cc-section-head>p { max-width:380px; color:#a7b2c6; font-size:.9rem; line-height:1.75; }
.cc-module-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 16px; }
.cc-module-help { color:#9eabc0; font-size:.82rem; line-height:1.5; }
.cc-module-controls { display:flex; align-items:center; gap:9px; flex:none; }
.cc-module-count { min-width:82px; color:#9eabc0; font-size:.74rem; text-align:right; font-variant-numeric:tabular-nums; }
.cc-module-arrow { width:40px; height:40px; border:1px solid rgba(190,205,230,.2); border-radius:50%; color:#edf1fa; background:#192438; font-size:1.05rem; cursor:pointer; transition:background .2s,border-color .2s,opacity .2s; }
.cc-module-arrow:hover:not(:disabled) { background:#2b3150; border-color:#8f83f2; }
.cc-module-arrow:disabled { opacity:.36; cursor:default; }
.cc-module-track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 28px)/3); gap:14px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x mandatory; scroll-padding-inline:2px; padding:2px 2px 14px; scrollbar-width:thin; scrollbar-color:#58617a #151d2c; }
.cc-module-track:focus-visible { outline:2px solid #8f83f2; outline-offset:3px; border-radius:12px; }
.cc-module-card { min-height:445px; padding:25px; display:flex; flex-direction:column; scroll-snap-align:start; background:linear-gradient(155deg,#192438,#121a29); border:1px solid var(--border); border-radius:14px; }
.cc-module-eyebrow { color:#8f83f2; font-size:.62rem; font-weight:800; letter-spacing:.12em; }
.cc-module-card h3 { margin:20px 0 9px; font-size:1.25rem; line-height:1.2; }
.cc-module-intro { color:#c1cad9; font-size:.83rem; line-height:1.62; }
.cc-module-details { margin-top:16px; display:grid; gap:12px; }
.cc-module-detail b { display:block; margin-bottom:4px; color:#edf1fa; font-size:.78rem; }
.cc-module-detail p { color:#aab6c9; font-size:.77rem; line-height:1.55; }
.cc-module-benefit { margin-top:auto; padding-top:17px; color:#59dcd3; font-size:.77rem; line-height:1.55; }
.cc-module-benefit b { display:block; margin-bottom:4px; color:#8ce9e3; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; }
.cc-use-section { padding:clamp(52px,5vw,72px) 0; background:#141b2a; }.cc-use-section .cc-section-head .eyebrow { color:#4ce0d2; }.cc-use-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.cc-use-grid article { padding:25px; border:1px solid rgba(190,205,230,.13); background:#192235; border-radius:12px; }.cc-use-grid article>span { color:#4ce0d2; font-size:.64rem; font-weight:800; letter-spacing:.13em; }.cc-use-grid h3 { margin:20px 0 9px; font-size:1.16rem; }.cc-use-grid p { color:#aab5c7; font-size:.84rem; line-height:1.7; }.cc-note { margin-top:16px; color:#8995a8; font-size:.73rem; }
.cc-contact { padding-top:clamp(64px,7vw,95px); padding-bottom:90px; }.cc-contact-intro { background:linear-gradient(145deg,#242147,#172a37); border-color:rgba(167,151,255,.25); }.cc-contact-intro h3 { color:#f0efff; }.cc-contact-intro p { color:#c1c8d7; }.cc-contact-intro .contact-foot a { color:#4ce0d2; }
:root[data-brand="control-center"] .surface-form { background:#161f31; border-color:var(--border); }:root[data-brand="control-center"] .surface-form label { color:#dce3ee; }:root[data-brand="control-center"] .surface-form input:not([type="checkbox"]),:root[data-brand="control-center"] .surface-form textarea { color:var(--text); background:#0f1726; border-color:var(--border); }

/* Home Center: calm home-focused palette and room-map illustration */
:root[data-brand="home-center"] { color-scheme:light; --bg:#f5f3eb; --bg-alt:#e9e9dc; --panel:#fffdf7; --panel-strong:#f0eee4; --text:#26372f; --muted:#69776e; --border:rgba(38,55,47,.15); --accent:#8ec4a3; --accent-soft:rgba(142,196,163,.22); --accent-secondary:#e8a86d; --shadow:0 22px 70px rgba(39,57,45,.12); }
:root[data-brand="home-center"] .site-header { background:rgba(245,243,235,.93); border-color:var(--border); }
:root[data-brand="home-center"] .brand-icon { color:#f5f3eb; background:#315b48; border:0; border-radius:50% 50% 50% 8px; }
:root[data-brand="home-center"] .nav>a:not(.button) { color:#42554a; }
:root[data-brand="home-center"] .button.primary { background:#315b48; color:#fffdf7; }
:root[data-brand="home-center"] .button.primary:hover { background:#43775d; }
:root[data-brand="home-center"] .button.secondary { color:#315b48; border-color:rgba(49,91,72,.28); background:transparent; }
:root[data-brand="home-center"] .site-footer { background:#203b30; color:#f5f3eb; }:root[data-brand="home-center"] .site-footer p,:root[data-brand="home-center"] .site-footer a,:root[data-brand="home-center"] .site-footer span { color:#c9d6ce; }
.hc-hero { position:relative; overflow:hidden; padding:clamp(52px,6vw,82px) 0; background:radial-gradient(ellipse at 84% 34%,rgba(232,168,109,.19),transparent 28%),linear-gradient(120deg,#f5f3eb,#f0f1e6 60%,#e4eee2); }
.hc-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr); gap:clamp(32px,5vw,72px); align-items:center; }
.hc-hero-copy .eyebrow { display:flex; align-items:center; gap:11px; color:#547e64; margin-bottom:23px; }:root[data-brand="home-center"] .pulse { background:#6fae85; box-shadow:0 0 0 5px rgba(142,196,163,.3); }
.hc-hero-copy h1 { max-width:680px; font-size:clamp(2.05rem,3.4vw,3.25rem); line-height:1.12; letter-spacing:-.055em; }.hc-hero-copy .lead { max-width:630px; margin-top:21px; color:#5d6d63; font-size:1.02rem; line-height:1.8; }
.hc-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }.hc-hero-note { margin-top:26px; color:#738276; font-size:.68rem; letter-spacing:.14em; }
.hc-home-art { min-height:410px; position:relative; display:flex; align-items:center; justify-content:center; isolation:isolate; }.hc-sun { position:absolute; right:10%; top:5%; width:115px; aspect-ratio:1; border-radius:50%; background:rgba(232,168,109,.25); z-index:-1; }
.hc-house { width:min(100%,460px); height:310px; position:relative; display:grid; grid-template-columns:1.2fr .8fr; grid-template-rows:1.1fr .9fr; background:#fffdf6; border:2px solid #668875; box-shadow:var(--shadow); transform:rotate(-2deg); }
.hc-roof { position:absolute; left:7%; right:7%; top:-18px; height:28px; background:#315b48; clip-path:polygon(0 100%,50% 0,100% 100%); }
.hc-room { position:relative; display:flex; flex-direction:column; justify-content:space-between; padding:14px; border:1px solid rgba(49,91,72,.16); color:#738477; font-size:.58rem; letter-spacing:.1em; }.hc-room b { color:#477858; font-size:1.3rem; font-weight:500; }.hc-room-living { grid-row:1/3; }.hc-room-bed { grid-column:2; grid-row:1; }.hc-room-entry { grid-column:2; grid-row:2; }.hc-room-bath { display:none; }
.hc-house-core { position:absolute; left:48%; top:47%; transform:translate(-50%,-50%); width:64px; height:64px; display:grid; place-items:center; border-radius:50%; background:#315b48; color:#e5efdf; border:5px solid #e0eddf; font-size:1rem; font-weight:800; }.hc-sensor { position:absolute; width:12px; height:12px; border-radius:50%; background:#e8a86d; box-shadow:0 0 0 6px rgba(232,168,109,.16); }.hc-sensor-1 { top:26%; left:38%; }.hc-sensor-2 { top:30%; right:19%; }.hc-sensor-3 { bottom:21%; right:19%; }
.hc-art-legend { position:absolute; bottom:0; display:flex; gap:8px; }.hc-art-legend span { padding:7px 10px; background:#fffdf7; border:1px solid var(--border); border-radius:999px; color:#58705f; font-size:.67rem; }
.hc-ribbon { border-block:1px solid var(--border); background:#e9ece1; }.hc-ribbon>.shell { min-height:72px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:15px; }.hc-ribbon span { color:#405a49; font-size:.78rem; font-weight:700; }.hc-ribbon i { width:5px; height:5px; border-radius:50%; background:#df9c5c; }
.hc-section { padding:clamp(48px,5vw,72px) 0; }.hc-section-head { align-items:end; margin-bottom:30px; }.hc-section-head .eyebrow { color:#668c70; }.hc-section-head h2 { max-width:700px; margin-top:10px; font-size:clamp(1.65rem,2.8vw,2.65rem); line-height:1.15; }.hc-section-head>p { max-width:390px; color:#68766c; font-size:.9rem; line-height:1.75; }
.hc-capability-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.hc-capability { min-height:280px; padding:clamp(22px,2.6vw,32px); border:1px solid var(--border); background:#fffdf7; border-radius:22px; display:flex; flex-direction:column; }.hc-capability>span { color:#72957a; font-size:.63rem; font-weight:800; letter-spacing:.13em; }.hc-capability h3 { margin:28px 0 12px; color:#2b4235; font-size:1.35rem; }.hc-capability p { color:#67766b; font-size:.86rem; line-height:1.75; }.hc-capability small { margin-top:auto; padding-top:20px; color:#a06d43; font-size:.68rem; }
.hc-scenes-section { padding:clamp(65px,7vw,96px) 0; background:#e8ecdf; }.hc-scenes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.hc-scene { min-height:245px; padding:25px; background:#f8f7f0; border:1px solid rgba(49,91,72,.12); border-radius:18px; }.hc-scene-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#e6f0e3; color:#477858; font-size:1.3rem; }.hc-scene>div:nth-child(2)>span { display:block; margin-top:20px; color:#a06d43; font-size:.62rem; font-weight:800; letter-spacing:.12em; }.hc-scene h3 { margin:7px 0 9px; color:#2b4235; font-size:1.13rem; }.hc-scene p { color:#67766b; font-size:.83rem; line-height:1.7; }
.hc-integration { padding-top:clamp(70px,8vw,110px); padding-bottom:clamp(70px,8vw,110px); display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(35px,7vw,100px); }.hc-integration-mark { min-height:300px; padding:clamp(28px,4vw,48px); background:#315b48; display:flex; flex-direction:column; justify-content:space-between; }.hc-integration-mark>span { color:#c5d9ca; font-size:.66rem; font-weight:800; letter-spacing:.14em; }.hc-integration-mark strong { color:#f7f6ef; font-size:clamp(2rem,3.8vw,3.4rem); line-height:1.04; letter-spacing:-.055em; }.hc-integration-mark em { color:#e8b37e; font-style:normal; }
.hc-integration-copy .eyebrow { color:#668c70; }.hc-integration-copy h2 { margin:13px 0; font-size:clamp(1.8rem,3vw,2.6rem); color:#2b4235; }.hc-integration-copy>p:not(.eyebrow) { color:#67766b; line-height:1.8; }.hc-platforms { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0 12px; }.hc-platforms span { padding:8px 11px; border:1px solid var(--border); border-radius:999px; color:#45634f; background:#fffdf7; font-size:.7rem; }.hc-integration-copy>small { color:#7c887e; font-size:.72rem; line-height:1.6; }
.hc-contact { padding-top:22px; padding-bottom:88px; }.hc-contact-intro { background:#315b48; border-color:#315b48; }.hc-contact-intro h3 { color:#f7f6ef; }.hc-contact-intro p { color:#d4e1d5; }.hc-contact-intro .contact-foot { color:#c2d2c5; }.hc-contact-intro .contact-foot a { color:#e8b37e; }
:root[data-brand="home-center"] .surface-form { background:#fffdf7; border-color:var(--border); }:root[data-brand="home-center"] .surface-form label { color:#40554a; }:root[data-brand="home-center"] .surface-form input:not([type="checkbox"]),:root[data-brand="home-center"] .surface-form textarea { color:#26372f; background:#f8f7f1; border-color:var(--border); }
@media (max-width:1000px) {
 .cc-hero-grid,.hc-hero-grid { grid-template-columns:1fr; }.cc-hero-copy,.hc-hero-copy { max-width:850px; }.cc-map,.hc-home-art { width:min(100%,620px); margin-inline:auto; }
 .cc-capability-grid,.cc-use-grid,.hc-capability-grid,.hc-scenes { grid-template-columns:1fr 1fr; }.cc-capability:last-child,.hc-capability:last-child,.hc-scene:last-child { grid-column:1/-1; }
 .hc-integration { grid-template-columns:1fr; }
}
@media (max-width:720px) {
 .cc-hero,.hc-hero { padding-top:54px; }.cc-hero-copy h1,.hc-hero-copy h1 { font-size:clamp(2.15rem,8vw,3.2rem); }
 .cc-map,.hc-home-art { min-height:320px; }.cc-ribbon>.shell,.hc-ribbon>.shell { justify-content:flex-start; padding-block:18px; gap:12px 17px; }.cc-ribbon i,.hc-ribbon i { display:none; }
 .cc-capability-grid,.cc-use-grid,.hc-capability-grid,.hc-scenes { grid-template-columns:1fr; }.cc-capability:last-child,.hc-capability:last-child,.hc-scene:last-child { grid-column:auto; }
 .cc-capability,.hc-capability { min-height:0; }.cc-capability h3,.hc-capability h3 { margin-top:17px; }
 .cc-contact,.hc-contact { padding-bottom:65px; }
 .hc-house { width:92%; height:275px; }.hc-integration-mark { min-height:250px; }
}
@media (max-width:420px) { .cc-map-node { padding:8px; font-size:.68rem; }.cc-map-label { font-size:.52rem; }.hc-room { padding:9px; }.hc-home-art { min-height:285px; } }

@media (max-width: 1050px){:root[data-brand="control-center"] .cc-module-track{grid-auto-columns:calc((100% - 14px)/2)}}
@media (max-width: 680px){:root[data-brand="control-center"] .cc-module-toolbar{align-items:flex-end}.cc-module-help{max-width:220px}.cc-module-track{grid-auto-columns:minmax(260px,86%)!important}.cc-module-card{min-height:420px;padding:22px}.cc-module-arrow{width:36px;height:36px}}
