/* Kingston Web Design: "Aurora" redesign layer.
   Loaded after site.css / site-home.css on every page that shares the site shell (not /example/).
   Everything is scoped to html[data-design="aurora"], so removing the data attribute restores the old look.
   CSP: style-src 'self' only, so no inline styles anywhere; icons come from /kwd-icons.svg. */

@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:300 700;font-display:swap;src:url("/fonts/cormorant-garamond-variable.woff2") format("woff2");}

html[data-design="aurora"]{
  --au-bg:#fbfaf7;
  --au-ink:#141b26;
  --au-soft:#4f5a69;
  --au-faint:#7b8695;
  --au-line:rgba(20,27,38,.10);
  --au-navy:#123456;
  --au-sky:#dbe9fb;
  --au-peach:#fde3d2;
  --au-mint:#d6eee3;
  --au-sand:#f2eadc;
  --au-card:rgba(255,255,255,.80);
  --au-shadow:0 1px 2px rgba(20,27,38,.05),0 12px 32px -12px rgba(20,27,38,.14);
  --au-shadow-lg:0 2px 4px rgba(20,27,38,.06),0 28px 60px -24px rgba(20,27,38,.26);
  --au-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --au-sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --au-col:68rem;
  --au-read:44rem;
  --paper:var(--au-bg);
  --link:var(--au-navy);
  --link-strong:var(--au-ink);
  --accent:var(--au-navy);
  --accent-deep:var(--au-navy);
  --line:var(--au-line);
  --ink:var(--au-ink);
  --ink-muted:var(--au-soft);
  --paper-raised:#fff;
  overflow-x:clip;

  & body{
    background-color:var(--au-bg);
    background-image:
      radial-gradient(52rem 26rem at 12% -4%,rgba(253,227,210,.75),transparent 62%),
      radial-gradient(56rem 28rem at 92% 2%,rgba(219,233,251,.85),transparent 62%),
      radial-gradient(40rem 22rem at 50% 38rem,rgba(214,238,227,.45),transparent 70%);
    background-repeat:no-repeat;
    background-size:100% 100%;
    background-position:0 0;
    color:var(--au-ink);
    font-family:var(--au-sans);
    font-size:1.0625rem;
    line-height:1.65;
    overflow-x:clip;
    -webkit-font-smoothing:antialiased;
  }
  /* faint column rules, like the reference layout */
  & body::before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;display:none;
    background:
      linear-gradient(var(--au-line),var(--au-line)) calc(50% - 35rem) 0/1px 100% no-repeat,
      linear-gradient(var(--au-line),var(--au-line)) calc(50% + 35rem) 0/1px 100% no-repeat;
  }
  @media (min-width:1180px){ & body::before{display:block;} }
  & body{position:relative;}

  & a{color:var(--au-navy);text-underline-offset:3px;text-decoration-color:rgba(18,52,86,.35);}
  & a:hover,& a:focus{color:var(--au-ink);text-decoration-color:currentColor;}
  & a:focus-visible,& summary:focus-visible,& button:focus-visible{outline:3px solid var(--au-navy);outline-offset:3px;border-radius:8px;}
  & .skip-link{background:var(--au-ink);border-radius:0 0 14px 14px;}

  /* ---------- header + nav ---------- */
  & header.site-header{
    position:static;background:transparent;color:var(--au-ink);padding:.9rem 1.25rem 0;border:0;
  }
  & header.site-header .wrap{
    max-width:var(--au-col);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;
  }
  & header.site-header a.brand{
    grid-column:2;justify-self:center;text-align:center;text-decoration:none;color:var(--au-ink);
    font-family:var(--au-display);font-weight:600;font-size:1.75rem;line-height:1;letter-spacing:-.02em;
    display:flex;flex-direction:column;align-items:center;gap:.2rem;
  }
  & header.site-header a.brand:hover,& header.site-header a.brand:focus{color:var(--au-ink);}
  & header.site-header a.brand small{
    font-family:var(--au-display);font-style:italic;font-weight:500;font-size:.95rem;letter-spacing:.01em;
    color:var(--au-soft);text-transform:none;
  }
  & header.site-header a.phone{
    grid-column:3;justify-self:end;display:inline-flex;align-items:center;gap:.5rem;
    min-height:44px;padding:.35rem 1rem;border-radius:999px;border:1px solid var(--au-line);
    background:rgba(255,255,255,.85);box-shadow:var(--au-shadow);color:var(--au-ink);
    font-size:.875rem;font-weight:500;text-decoration:none;letter-spacing:.01em;
  }
  & header.site-header a.phone::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:#2f9e63;box-shadow:0 0 0 3px rgba(47,158,99,.18);}
  & header.site-header a.phone:hover,& header.site-header a.phone:focus{background:#fff;color:var(--au-ink);}
  & .au-clock{
    grid-column:1;justify-self:start;display:inline-flex;align-items:center;gap:.5rem;
    font-size:.8125rem;color:var(--au-soft);font-variant-numeric:tabular-nums;white-space:nowrap;
  }
  & .au-clock svg{width:1rem;height:1rem;}

  & nav.site-nav{position:sticky;top:.6rem;z-index:30;background:none;border:0;padding:.55rem .75rem 0;}
  & nav.site-nav .wrap{
    width:fit-content;max-width:100%;margin:0 auto;padding:.3rem;gap:.15rem;flex-wrap:nowrap;justify-content:center;
    background:rgba(255,255,255,.74);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);
    border:1px solid var(--au-line);border-radius:999px;box-shadow:var(--au-shadow);overflow-x:auto;scrollbar-width:none;
  }
  & nav.site-nav .wrap::-webkit-scrollbar{display:none;}
  & nav.site-nav a{
    display:inline-flex;align-items:center;min-height:40px;padding:.3rem 1rem;border-radius:999px;
    color:var(--au-soft);font-size:.9rem;font-weight:500;text-decoration:none;border:0;white-space:nowrap;
  }
  & nav.site-nav a:hover,& nav.site-nav a:focus{background:rgba(20,27,38,.06);color:var(--au-ink);}
  & nav.site-nav a[aria-current]{background:var(--au-ink);color:#fff;box-shadow:0 6px 14px -6px rgba(20,27,38,.5);}

  /* ---------- page frame ---------- */
  & main{max-width:var(--au-read);padding:2rem 1.25rem 4rem;}
  & main p,& main li{color:var(--au-ink);}
  & main h1,& main h2{
    font-family:var(--au-display);font-weight:500;letter-spacing:-.025em;color:var(--au-ink);
    border:0;padding-top:0;
  }
  & main h2{font-size:clamp(2rem,4.4vw,2.75rem);line-height:1.02;margin:3.5rem 0 1rem;}
  & main h2::before{display:none;}
  & main h3{font-family:var(--au-sans);font-weight:600;letter-spacing:-.01em;color:var(--au-ink);}
  & main strong{font-weight:600;}

  /* inner-page hero (the home page uses .au-hero instead) */
  & .hero{
    position:relative;background:none;border:0;text-align:center;
    width:min(100vw - 2.5rem,var(--au-col));max-width:none;margin-inline:calc(50% - min(100vw - 2.5rem,var(--au-col))/2);
    padding:clamp(2rem,5vw,3.5rem) 0 1.25rem;
  }
  & .hero::before{display:none;}
  & .hero-inner{max-width:46rem;margin:0 auto;}
  & .kicker{
    font-family:var(--au-display);font-style:italic;font-variant:normal;font-weight:500;letter-spacing:.01em;
    font-size:1.25rem;color:var(--au-soft);margin:0 0 .5rem;
  }
  & .hero h1{
    font-family:var(--au-display);font-weight:500;letter-spacing:-.03em;line-height:.98;
    font-size:clamp(2.6rem,7vw,4.6rem);margin:0 0 1rem;text-wrap:balance;max-width:none;
  }
  & .hero .dek{font-size:1.125rem;color:var(--au-soft);max-width:36rem;margin:0 auto 1.5rem;}
  & .breadcrumbs ol{justify-content:center;font-size:.8125rem;color:var(--au-faint);margin-bottom:.5rem;}
  & .breadcrumbs a{color:var(--au-soft);}

  & .cta-buttons a.cta-btn-primary{background:var(--au-ink);color:#fff;border-color:transparent;}
  & .cta-buttons a.cta-btn-secondary{background:rgba(255,255,255,.85);color:var(--au-ink);}
  /* ---------- buttons ---------- */
  & .cta-buttons{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin:1.25rem 0;}
  & .cta-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.6rem 1.4rem;
    border-radius:999px;font-family:var(--au-sans);font-size:.9375rem;font-weight:500;letter-spacing:.005em;
    text-decoration:none;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
  }
  & .cta-btn-primary{background:var(--au-ink);color:#fff;box-shadow:0 10px 22px -10px rgba(20,27,38,.65),inset 0 1px 0 rgba(255,255,255,.18);}
  & .cta-btn-primary:hover,& .cta-btn-primary:focus{background:#0a0f17;color:#fff;transform:translateY(-1px);}
  & .cta-btn-secondary{background:rgba(255,255,255,.85);color:var(--au-ink);border-color:var(--au-line);box-shadow:var(--au-shadow);}
  & .cta-btn-secondary:hover,& .cta-btn-secondary:focus{background:#fff;color:var(--au-ink);transform:translateY(-1px);}
  & .cta-btn svg{width:1.05rem;height:1.05rem;flex:none;}

  /* ---------- content components shared with inner pages ---------- */
  & .table-wrap{border:1px solid var(--au-line);border-radius:22px;background:var(--au-card);box-shadow:var(--au-shadow);overflow:hidden;margin:1.5rem 0;}
  & .table-wrap table{font-size:.95rem;border-collapse:collapse;width:100%;}
  & .table-wrap th,& .table-wrap td{padding:.85rem 1.1rem;border:0;border-bottom:1px solid var(--au-line);text-align:left;vertical-align:top;background:none;}
  & .table-wrap tr:last-child th,& .table-wrap tr:last-child td{border-bottom:0;}
  & .table-wrap th{font-weight:600;color:var(--au-ink);width:9rem;}
  & .table-wrap td{color:var(--au-soft);}
  & .table-wrap thead th{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--au-faint);}

  & .at-a-glance{margin:2rem 0 2.5rem;background:none;border:0;box-shadow:none;padding:0;border-radius:0;}
  & .at-a-glance h2{font-size:1.5rem;margin:0 0 .5rem;text-align:center;}

  & .price-callout{
    position:relative;background:linear-gradient(180deg,rgba(219,233,251,.55),rgba(255,255,255,.9) 38%);
    border:1px solid var(--au-line);border-radius:28px;box-shadow:var(--au-shadow);padding:1.9rem 1.9rem 2rem;margin:1.5rem 0;overflow:hidden;
  }
  & .price-callout.tier-better{background:linear-gradient(180deg,rgba(253,227,210,.6),rgba(255,255,255,.9) 38%);border-bottom:1px solid var(--au-line);}
  & .price-callout .tier-label{
    font-family:var(--au-sans);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:var(--au-soft);margin:0 0 .25rem;font-variant:normal;
  }
  & .price-callout .tier-price{
    font-family:var(--au-display);font-weight:500;font-size:3.4rem;line-height:1;letter-spacing:-.03em;margin:0 0 .75rem;
    background:none;color:var(--au-ink);padding:0;display:block;
  }
  & .price-callout ul{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.55rem;}
  & .price-callout li{position:relative;padding-left:1.75rem;margin:0;color:var(--au-soft);font-size:.975rem;line-height:1.5;}
  & .price-callout li::before{
    content:"";position:absolute;left:0;top:.18rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--au-mint);
    -webkit-mask:none;mask:none;
  }
  & .price-callout li::after{
    content:"";position:absolute;left:.22rem;top:.4rem;width:.65rem;height:.65rem;background:#1e6b49;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  }

  & .area-card,& .work-card{
    background:var(--au-card);border:1px solid var(--au-line);border-radius:24px;box-shadow:var(--au-shadow);padding:1.5rem 1.6rem;margin:1.1rem 0;
  }
  & .area-card h2,& .work-card h2,& .work-card__title{font-family:var(--au-display);font-size:1.7rem;font-weight:500;letter-spacing:-.02em;margin:0 0 .4rem;line-height:1.05;}

  & .faq{margin:1.5rem 0;}
  & .faq-q{font-family:var(--au-display);font-weight:500;font-size:1.65rem;line-height:1.1;letter-spacing:-.02em;margin:2rem 0 .5rem;padding-top:1.6rem;border-top:1px solid var(--au-line);}
  & .faq-q:first-child{border-top:0;padding-top:0;margin-top:0;}
  & .faq-a{color:var(--au-soft);margin:0;}

  & .pullquote{border:0;margin:2.5rem 0;padding:0;text-align:center;}
  & .pullquote p{font-family:var(--au-display);font-weight:500;font-style:italic;font-size:1.9rem;line-height:1.2;letter-spacing:-.015em;text-indent:0;color:var(--au-ink);}
  & .about-photo{width:176px;height:176px;border-radius:50%;border:4px solid #fff;box-shadow:var(--au-shadow-lg);object-fit:cover;}
  & .own-band{background:linear-gradient(155deg,#16283d,#0d1826);border:0;border-radius:32px;box-shadow:var(--au-shadow-lg);}
  & .own-band a{color:#fff;}

  & .cta-band{width:auto;max-width:none;margin:3.5rem 0 0;padding:0;border:0;background:none;}
  & .cta-band .cta-lead{color:var(--au-ink);margin-bottom:1rem;}
  & .cta-band-inner{
    text-align:center;padding:clamp(2rem,5vw,3rem) 1.5rem;border-radius:36px;border:1px solid var(--au-line);box-shadow:var(--au-shadow);
    background:radial-gradient(30rem 14rem at 0% 0%,rgba(253,227,210,.9),transparent 70%),radial-gradient(30rem 14rem at 100% 100%,rgba(219,233,251,.95),transparent 70%),#fff;
  }
  & .cta-band .cta-lead{font-family:var(--au-display);font-weight:500;font-size:clamp(2rem,5vw,2.9rem);line-height:1;letter-spacing:-.025em;margin:0 0 .5rem;}
  & .cta-note,& .cta-band .cta-note{font-size:.875rem;color:var(--au-soft);margin:.5rem 0 0;}

  /* forms */
  & .ld-form input[type=text],& .ld-form input[type=email],& .ld-form input[type=tel],& .ld-form select,& .ld-form textarea,
  & .nl-form input[type=email],& .nl-form input[type=text]{
    border:1px solid var(--au-line);border-radius:14px;background:#fff;padding:.7rem .9rem;font-family:var(--au-sans);font-size:1rem;color:var(--au-ink);min-height:48px;
  }
  & .ld-button,& .nl-button{border-radius:999px;background:var(--au-ink);color:#fff;border:0;min-height:48px;padding:.6rem 1.5rem;font-family:var(--au-sans);font-weight:500;cursor:pointer;}
  & .ld-button:hover,& .nl-button:hover{background:#0a0f17;}

  /* one type system: Inter for text, Cormorant Garamond for display (the old Barlow faces are no longer fetched) */
  & nav.site-nav a,& footer.site-footer a,& nav.ld-bar a,& header.site-header a.phone,& .dek,& figcaption,& .about-thesis,& th,& .table-wrap th{font-family:var(--au-sans);}
  & .work-card__mark{font-family:var(--au-display);}

  /* ---------- decision tool ("Which size fits?") ---------- */
  & .ld-tool{max-width:none;margin:2.5rem 0;padding:1.75rem;border:1px solid var(--au-line);border-radius:28px;background:var(--au-card);box-shadow:var(--au-shadow);}
  & .ld-tool h2{margin:0 0 .5rem;}
  & .ld-tool fieldset{border:0;padding:0;margin:1.5rem 0 0;}
  & .ld-tool legend{font-weight:600;padding:0;margin-bottom:.5rem;color:var(--au-ink);}
  & .ld-tool .ld-opt{display:flex;align-items:center;gap:.6rem;min-height:44px;}
  & .ld-tool input[type=radio]{accent-color:var(--au-ink);width:1.15rem;height:1.15rem;margin:0;}
  & .ld-tool .ld-result{margin-top:1.5rem;}
  & .ld-tool .ld-result p{font-family:var(--au-display);font-size:1.6rem;line-height:1.15;letter-spacing:-.02em;margin:0 0 1rem;}
  & a.ld-tool-link{display:inline-flex;align-items:center;min-height:48px;padding:.6rem 1.4rem;border-radius:999px;background:var(--au-ink);color:#fff;font-weight:500;text-decoration:none;box-shadow:0 10px 22px -12px rgba(20,27,38,.6);}
  & a.ld-tool-link:hover,& a.ld-tool-link:focus{background:#0a0f17;color:#fff;}

  /* ---------- footer + mobile call bar ---------- */
  & footer.site-footer{border-top:1px solid var(--au-line);padding:2.5rem 1.25rem 6rem;margin-top:2rem;background:linear-gradient(180deg,transparent,rgba(242,234,220,.55));}
  & footer.site-footer .wrap{max-width:var(--au-col);justify-content:center;text-align:center;font-family:var(--au-sans);font-size:.875rem;color:var(--au-soft);flex-direction:column;gap:.5rem;}
  & footer.site-footer p{margin:0;color:var(--au-soft);}
  & footer.site-footer a{color:var(--au-ink);}
  & footer.site-footer .disclosure{font-size:.8125rem;color:var(--au-faint);}
  & nav.ld-bar{
    left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));padding:.4rem;border-radius:999px;
    background:rgba(20,27,38,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--au-shadow-lg);gap:.35rem;
  }
  & nav.ld-bar a{border-radius:999px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--au-sans);font-weight:500;font-size:.9375rem;text-decoration:none;color:#fff;}
  & nav.ld-bar .ld-bar-main{background:#fff;color:var(--au-ink);}
  @media (min-width:769px){ & nav.ld-bar{display:none;} & footer.site-footer{padding-bottom:3rem;} }

  /* =====================================================================
     HOME PAGE
     ===================================================================== */
  & main.au-home{max-width:none;padding:0 0 3rem;}
  & .au-wrap{width:100%;max-width:var(--au-col);margin:0 auto;padding-inline:1.25rem;}
  & .au-narrow{max-width:46rem;margin-inline:auto;}
  & .au-section{padding:clamp(3rem,8vw,5.5rem) 0 0;}
  & .au-head{text-align:center;max-width:42rem;margin:0 auto 2rem;}
  & .au-eyebrow{
    margin:0 0 .35rem;font-family:var(--au-display);font-style:italic;font-weight:500;font-size:1.25rem;letter-spacing:.01em;color:var(--au-soft);
  }
  & main.au-home h2{font-size:clamp(2.3rem,6vw,3.6rem);line-height:.98;margin:0;letter-spacing:-.03em;text-wrap:balance;}
  & .au-lede{font-size:1.125rem;color:var(--au-soft);margin:1rem auto 0;max-width:36rem;}

  & .au-chip{
    display:inline-grid;place-items:center;width:.82em;height:.66em;margin:0 .06em;vertical-align:.04em;border-radius:.18em;
    background:linear-gradient(145deg,#fff,var(--au-sky));box-shadow:0 .25em .6em -.2em rgba(20,27,38,.35),inset 0 0 0 1px rgba(255,255,255,.9);
    color:var(--au-navy);
  }
  & .au-chip svg{width:.5em;height:.5em;}
  & .au-chip--peach{background:linear-gradient(145deg,#fff,var(--au-peach));}
  & .au-chip--mint{background:linear-gradient(145deg,#fff,var(--au-mint));}

  /* hero */
  & .au-hero{position:relative;text-align:center;padding:1.5rem 0 0;}
  & .au-stage{position:relative;height:clamp(250px,40vw,400px);max-width:46rem;margin:0 auto;}
  & .au-portrait{
    position:absolute;left:50%;top:0;transform:translateX(-50%);width:clamp(200px,32vw,320px);aspect-ratio:1;z-index:3;
    -webkit-mask-image:radial-gradient(ellipse 40% 52% at 50% 44%,#000 48%,transparent 100%);
    mask-image:radial-gradient(ellipse 40% 52% at 50% 44%,#000 48%,transparent 100%);
  }
  & .au-portrait img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05) brightness(1.18);}
  & .au-float{
    position:absolute;margin:0;border-radius:14px;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.9);
    box-shadow:0 24px 40px -22px rgba(20,27,38,.5),0 2px 6px rgba(20,27,38,.08);
  }
  & .au-float img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;}
  & .au-float--a{left:2%;top:18%;width:29%;transform:rotate(-7deg);z-index:1;animation:au-bob 9s ease-in-out infinite;}
  & .au-float--b{left:28%;top:0;width:44%;transform:none;z-index:3;box-shadow:0 36px 60px -26px rgba(20,27,38,.55),0 2px 6px rgba(20,27,38,.08);animation:au-bob 11s ease-in-out -3s infinite;}
  & .au-float--c{right:2%;top:16%;width:29%;transform:rotate(6deg);z-index:1;animation:au-bob 10s ease-in-out -6s infinite;}
  & .au-float--d{right:12%;top:52%;width:25%;z-index:4;transform:rotate(-3deg);z-index:2;animation:au-bob 12s ease-in-out -2s infinite;}
  & .au-float--e{left:12%;top:54%;width:25%;z-index:4;transform:rotate(4deg);z-index:2;animation:au-bob 8s ease-in-out -5s infinite;}
  @media (prefers-reduced-motion:reduce){ & .au-float{animation:none!important;} & .cta-btn{transition:none;} }

  & .au-hero .au-eyebrow{position:relative;z-index:4;margin:calc(-1*clamp(1.6rem,4.5vw,3rem)) 0 .25rem;text-transform:none;font-variant:normal;}
  & .au-hero h1{
    position:relative;z-index:4;margin:0 auto 1rem;max-width:none;
    font-size:clamp(2.7rem,8vw,5.6rem);line-height:.94;letter-spacing:-.035em;
  }
  & .au-hero h1 .au-line{display:block;}
  & .au-hero .dek{position:relative;z-index:4;font-style:normal;font-size:1.0625rem;color:var(--au-soft);max-width:34rem;margin:0 auto 1.4rem;}
  & .au-hero .cta-buttons{position:relative;z-index:4;margin:0 0 1.25rem;}
  & .au-social{position:relative;z-index:4;display:flex;justify-content:center;gap:.6rem;list-style:none;margin:0;padding:0;}
  & .au-social a{
    display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--au-ink);color:#fff;
    box-shadow:0 10px 20px -10px rgba(20,27,38,.7);transition:transform .15s ease;
  }
  & .au-social a:hover,& .au-social a:focus{background:#0a0f17;color:#fff;transform:translateY(-2px);}
  & .au-social svg{width:1.15rem;height:1.15rem;}
  & .au-hero__note{position:relative;z-index:4;margin:1.4rem auto 0;font-size:.8125rem;color:var(--au-faint);max-width:30rem;}

  /* facts */
  & .au-facts .at-a-glance{margin:0 auto;max-width:44rem;}
  & .au-facts .at-a-glance h2{display:none;}
  & .au-facts .table-wrap{margin:0;}

  /* statement */
  & .au-statement{text-align:center;}
  & .au-statement p.au-big{color:var(--au-ink);
    font-family:var(--au-display);font-weight:500;font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.08;letter-spacing:-.02em;margin:0 auto 1.5rem;max-width:34ch;text-wrap:balance;
  }
  & .au-statement p{color:var(--au-soft);max-width:40rem;margin:0 auto 1rem;font-size:1.0625rem;}

  /* feature cards */
  & .au-grid{display:grid;gap:1rem;}
  & .au-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}
  & .au-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
  & .au-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
  & .au-card{
    position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;border-radius:26px;border:1px solid var(--au-line);
    background:linear-gradient(180deg,var(--au-tint,var(--au-sky)),rgba(255,255,255,.9) 52%);box-shadow:var(--au-shadow);
  }
  & .au-card:nth-child(2n){--au-tint:var(--au-peach);}
  & .au-card:nth-child(3n){--au-tint:var(--au-mint);}
  & .au-card .au-ico{
    display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:14px;background:#fff;color:var(--au-navy);
    box-shadow:0 8px 18px -10px rgba(20,27,38,.5);margin-bottom:.6rem;
  }
  & .au-card .au-ico svg{width:1.35rem;height:1.35rem;}
  & .au-card h3{margin:0;font-size:1.0625rem;}
  & .au-card p{margin:0;color:var(--au-soft);font-size:.975rem;line-height:1.55;}

  /* pricing */
  & .au-tiers{align-items:stretch;margin-top:.5rem;}
  & .au-tier{
    position:relative;display:flex;flex-direction:column;padding:1.9rem 1.75rem 2rem;border-radius:32px;border:1px solid var(--au-line);
    background:linear-gradient(180deg,var(--au-tint,var(--au-sky)),#fff 46%);box-shadow:var(--au-shadow);
  }
  & .au-tier:nth-child(2){--au-tint:var(--au-peach);}
  & .au-tier:nth-child(3){--au-tint:var(--au-mint);}
  & .au-tier .tier-label{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--au-soft);margin:0 0 .35rem;font-family:var(--au-sans);}
  & .au-tier .tier-price{font-family:var(--au-display);font-size:3.8rem;font-weight:500;line-height:1;letter-spacing:-.035em;margin:0 0 .25rem;color:var(--au-ink);}
  & .au-tier .au-cad{font-family:var(--au-sans);font-size:.8125rem;letter-spacing:.04em;color:var(--au-faint);margin:0 0 1rem;}
  & .au-tier .au-for{color:var(--au-ink);margin:0 0 1rem;font-size:1rem;}
  & .au-tier ul{list-style:none;padding:0;margin:0;display:grid;gap:.6rem;border-top:1px solid var(--au-line);padding-top:1.1rem;}
  & .au-tier li{position:relative;padding-left:1.75rem;color:var(--au-soft);font-size:.95rem;line-height:1.5;margin:0;}
  & .au-tier li::before{content:"";position:absolute;left:0;top:.15rem;width:1.1rem;height:1.1rem;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px var(--au-line);}
  & .au-tier li::after{
    content:"";position:absolute;left:.225rem;top:.375rem;width:.65rem;height:.65rem;background:#1e6b49;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  & .au-tier--feature{background:linear-gradient(180deg,#1b2a3d,#0e1622);color:#fff;border-color:transparent;box-shadow:var(--au-shadow-lg);}
  & .au-tier--feature .tier-label,& .au-tier--feature .au-cad{color:rgba(255,255,255,.7);}
  & .au-tier--feature .tier-price,& .au-tier--feature .au-for{color:#fff;}
  & .au-tier--feature .au-for strong{color:#fff;}
  & .au-tier--feature ul{border-top-color:rgba(255,255,255,.16);}
  & .au-tier--feature li{color:rgba(255,255,255,.82);}
  & .au-tier--feature li::before{background:rgba(255,255,255,.14);box-shadow:none;}
  & .au-tier--feature li::after{background:#8fe0b5;}
  & .au-badge{
    position:absolute;top:1.1rem;right:1.1rem;padding:.25rem .7rem;border-radius:999px;font-size:.75rem;font-weight:500;letter-spacing:.02em;
    background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.22);
  }
  & .au-notes{margin-top:1rem;}
  & .au-note{padding:1.4rem 1.5rem;border-radius:24px;border:1px solid var(--au-line);background:var(--au-card);box-shadow:var(--au-shadow);}
  & .au-note p{margin:0;color:var(--au-soft);font-size:.975rem;}
  & .au-note b{display:block;font-family:var(--au-display);font-weight:500;font-size:1.5rem;letter-spacing:-.02em;color:var(--au-ink);margin-bottom:.25rem;}

  /* reading list */
  & .au-reads{margin-top:1.5rem;}
  & .au-read{
    display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.3rem 1.4rem;border-radius:24px;border:1px solid var(--au-line);
    background:var(--au-card);box-shadow:var(--au-shadow);text-decoration:none;color:var(--au-ink);font-family:var(--au-display);font-size:1.45rem;line-height:1.1;letter-spacing:-.02em;font-weight:500;
    transition:transform .15s ease,box-shadow .15s ease;
  }
  & .au-read:hover,& .au-read:focus{color:var(--au-ink);transform:translateY(-2px);box-shadow:var(--au-shadow-lg);}
  & .au-read svg{flex:none;width:1.4rem;height:1.4rem;color:var(--au-navy);margin-top:.15rem;}

  /* portfolio demo */
  & .portfolio-stage{
    display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;
    padding:clamp(1.5rem,4vw,2.5rem);border-radius:36px;border:1px solid var(--au-line);box-shadow:var(--au-shadow);
    background:radial-gradient(28rem 16rem at 100% 0%,rgba(219,233,251,.9),transparent 70%),radial-gradient(24rem 14rem at 0% 100%,rgba(253,227,210,.8),transparent 70%),#fff;
  }
  & .portfolio-stage__eyebrow{margin:0 0 .35rem;font-family:var(--au-display);font-style:italic;font-weight:500;font-size:1.25rem;color:var(--au-soft);text-transform:none;letter-spacing:.01em;}
  & .portfolio-stage h2{font-size:clamp(2rem,4.5vw,3rem);margin:0 0 .75rem;}
  & .portfolio-stage p{color:var(--au-soft);}
  & .portfolio-stage__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.25rem 0 0;}
  & .portfolio-stage__frame{
    display:block;border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--au-line);box-shadow:var(--au-shadow-lg);text-decoration:none;color:var(--au-ink);
    transform:rotate(1.5deg);transition:transform .2s ease;
  }
  & .portfolio-stage__frame:hover,& .portfolio-stage__frame:focus{transform:rotate(0deg) translateY(-3px);color:var(--au-ink);}
  & .portfolio-stage__chrome{display:flex;align-items:center;gap:.4rem;padding:.7rem .9rem;background:#f1f3f6;border-bottom:1px solid var(--au-line);}
  & .portfolio-stage__chrome i{width:.65rem;height:.65rem;border-radius:50%;background:#d3d8df;display:block;}
  & .portfolio-stage__url{margin-left:.6rem;padding:.15rem .8rem;border-radius:999px;background:#fff;font-size:.75rem;color:var(--au-soft);}
  & .portfolio-stage__screen{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:.35rem;min-height:15rem;padding:1.5rem;background:linear-gradient(160deg,#f4ecdd,#e4d6bd 60%,#c9b793);}
  & .portfolio-stage__mark{font-family:var(--au-display);font-weight:600;font-size:2.4rem;line-height:1;letter-spacing:-.02em;color:#2a2116;}
  & .portfolio-stage__sub{font-size:.9rem;color:#5b4d36;}
  & .portfolio-stage__hint{margin-top:.5rem;font-size:.8125rem;font-weight:500;color:#2a2116;}

  /* split text sections */
  & .au-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.5rem,5vw,4rem);align-items:start;}
  & .au-split .au-head{text-align:left;margin:0;}
  & .au-prose p{color:var(--au-soft);margin:0 0 1rem;}
  & .au-prose p:last-child{margin-bottom:0;}

  /* meet */
  & .au-meet{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;padding:clamp(1.5rem,4vw,2.5rem);border-radius:36px;border:1px solid var(--au-line);background:var(--au-card);box-shadow:var(--au-shadow);}
  & .au-meet img{display:block;width:clamp(140px,20vw,220px);height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;border:5px solid #fff;box-shadow:var(--au-shadow-lg);}
  & main.au-home .au-meet h2{font-size:clamp(2rem,4.5vw,3rem);margin:0 0 1rem;}

  /* faq */
  & .au-faq{max-width:46rem;margin:0 auto;display:grid;gap:.7rem;}
  & .au-faq details{border:1px solid var(--au-line);border-radius:22px;background:var(--au-card);box-shadow:var(--au-shadow);}
  & .au-faq summary.faq-q{
    margin:0;border-top:0;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;min-height:56px;
    font-family:var(--au-display);font-weight:500;font-size:1.4rem;line-height:1.1;letter-spacing:-.02em;color:var(--au-ink);
  }
  & .au-faq summary::-webkit-details-marker{display:none;}
  & .au-faq summary.faq-q::after{
    content:"";flex:none;width:1.9rem;height:1.9rem;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--au-line);
    -webkit-mask:none;mask:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 7v10M7 12h10' stroke='%23141b26' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
    background-size:1.1rem;background-position:center;background-repeat:no-repeat;transition:transform .2s ease;
  }
  & .au-faq details[open] summary.faq-q::after{transform:rotate(45deg);}
  & .au-faq details p{margin:0;padding:0 1.4rem 1.3rem;color:var(--au-soft);}

  /* closing call */
  & .au-cta{
    margin:0;text-align:center;padding:clamp(2.25rem,6vw,4rem) 1.5rem;border-radius:40px;border:1px solid var(--au-line);box-shadow:var(--au-shadow);
    background:radial-gradient(34rem 16rem at 0% 0%,rgba(253,227,210,.95),transparent 70%),radial-gradient(34rem 16rem at 100% 100%,rgba(219,233,251,1),transparent 70%),#fff;
  }
  & .au-cta__inner{background:none;border:0;box-shadow:none;padding:0;}
  & main.au-home .au-cta h2{margin:0 0 1rem;}
  & .au-cta .cta-note{color:var(--au-soft);}
  & .au-cta p{color:var(--au-soft);max-width:34rem;margin:0 auto .75rem;}
  & .au-cta p strong{color:var(--au-ink);}
  & .au-cta .cta-buttons{max-width:none;margin:1.5rem auto .75rem;}

  /* pricing buttons + quote form */
  & .au-tier__cta{margin-top:auto;align-self:flex-start;background:var(--au-ink);color:#fff;box-shadow:0 10px 22px -12px rgba(20,27,38,.6);}
  & .au-tier .au-tier__cta{margin-top:1.5rem;}
  & .au-tier__cta:hover,& .au-tier__cta:focus{background:#0a0f17;color:#fff;transform:translateY(-1px);}
  & .au-tier--feature .au-tier__cta{background:#fff;color:var(--au-ink);}
  & .au-tier--feature .au-tier__cta:hover,& .au-tier--feature .au-tier__cta:focus{background:#eef3fa;color:var(--au-ink);}
  & .au-or{display:flex;align-items:center;gap:1rem;max-width:34rem;margin:1.75rem auto 1.25rem;color:var(--au-faint);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;}
  & .au-or::before,& .au-or::after{content:"";flex:1;height:1px;background:var(--au-line);}
  & .au-quote{max-width:34rem;margin:0 auto;text-align:left;display:grid;gap:1rem;}
  & .au-quote .ld-field{margin:0;display:grid;gap:.35rem;}
  & .au-quote label{font-size:.875rem;font-weight:600;color:var(--au-ink);}
  & .au-quote .ld-hint{display:block;font-weight:400;color:var(--au-soft);font-size:.8125rem;}
  & .au-quote input[type=text],& .au-quote input[type=email],& .au-quote select,& .au-quote textarea{width:100%;border:1px solid var(--au-line);border-radius:14px;background:#fff;padding:.7rem .9rem;font:inherit;font-size:1rem;color:var(--au-ink);min-height:48px;}
  & .au-quote textarea{resize:vertical;min-height:7rem;}
  & .au-quote__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
  & .au-quote .ld-consent{font-size:.8125rem;color:var(--au-soft);margin:0;max-width:none;}
  & .au-quote .ld-button{justify-self:start;background:var(--au-ink);color:#fff;border:0;border-radius:999px;min-height:48px;padding:.6rem 1.5rem;font:inherit;font-weight:500;cursor:pointer;box-shadow:0 10px 22px -12px rgba(20,27,38,.6);}
  & .au-quote .ld-button:hover,& .au-quote .ld-button:focus-visible{background:#0a0f17;color:#fff;}
  & .au-quote .ld-button:disabled{opacity:.6;cursor:wait;}
  & .au-quote .ld-status{margin:0;max-width:none;min-height:1.5rem;font-size:.9375rem;color:var(--au-ink);}
  & .au-quote .ld-status--error{color:#a3261b;}
  & .au-quote .ld-hp{display:none!important;}

  /* ---------- responsive ---------- */
  @media (max-width:980px){
    & .au-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));}
    & .au-grid--3.au-tiers{grid-template-columns:1fr;max-width:34rem;margin-inline:auto;}
    & .au-grid--3.au-reads{grid-template-columns:1fr;}
  }
  @media (max-width:820px){
    & .au-split,& .portfolio-stage,& .au-meet{grid-template-columns:1fr;}
    & .au-split .au-head{text-align:center;}
    & .au-meet{text-align:center;justify-items:center;}
    & .au-grid--2{grid-template-columns:1fr;}
    & .portfolio-stage__frame{transform:none;}
  }
  @media (max-width:640px){
    & header.site-header .wrap{grid-template-columns:1fr auto;}
    & header.site-header a.brand{grid-column:1;justify-self:start;align-items:flex-start;text-align:left;font-size:1.5rem;}
    & header.site-header a.phone{grid-column:2;padding:.35rem .85rem;}
    & .au-clock{display:none;}
    & .au-grid--4{grid-template-columns:1fr;}
    & .au-float--d,& .au-float--e{display:none;}
    & .au-float--a{left:-2%;top:22%;width:34%;}
    & .au-float--c{right:-2%;top:20%;width:34%;}
    & .au-float--b{left:20%;top:0;width:60%;}
    & nav.site-nav a{padding:.3rem .62rem;font-size:.85rem;}
    & .au-hero h1{font-size:2.35rem;}
    & .au-quote__row{grid-template-columns:1fr;}
    & .au-hero .cta-btn{font-size:.875rem;padding-inline:1.1rem;}
    & .table-wrap th{width:6.5rem;}
    & .price-callout .tier-price{font-size:3rem;}
  }
}

@keyframes au-bob{0%,100%{translate:0 0;}50%{translate:0 -8px;}}
