:root{--bg:#191a17;--panel:#242620;--line:#41443a;--ink:#f9f7f2;--muted:#cecec4;--gold:#ffc107;--paper:#f5f2e9;--dark:#20221b;--display:"Manrope",system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 "DM Sans",system-ui,sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button[hidden]{display:none}
:focus-visible{outline:3px solid #d88a00;outline-offset:5px}
.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}
.bar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:9px;font:800 19px var(--display);white-space:nowrap}
.brand span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:var(--gold);color:var(--dark);font-size:22px}
nav{display:flex;gap:32px;color:var(--muted);font-weight:600;font-size:14px}
nav a:hover,footer a:hover{color:var(--gold)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:1px solid transparent;border-radius:8px;padding:12px 19px;font-weight:800;line-height:1.3;width:fit-content}
.yellow{background:var(--gold);color:var(--dark)}
.yellow:hover{background:#ffd45a}
.outline{background:transparent;color:inherit;border-color:#636759}
.outline:hover{border-color:var(--gold)}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;padding-block:92px 100px}
.eyebrow{margin:0 0 18px;color:var(--gold);font-size:13px;font-weight:800;letter-spacing:.085em;text-transform:uppercase}
.eyebrow span{display:inline-block;width:8px;height:8px;background:var(--gold);border-radius:50%;margin-right:7px}
h1,h2,h3{font-family:var(--display);line-height:1.1;margin:0;font-weight:800}
h1{font-size:clamp(45px,6vw,77px);letter-spacing:-.07em}
h1 em{color:var(--gold);font-style:normal}
h2{font-size:clamp(32px,4vw,49px);letter-spacing:-.055em}
h3{font-size:21px;letter-spacing:-.025em}
.intro{font-size:19px;color:var(--muted);max-width:48ch;margin:24px 0 29px}
.campaign{border:1px solid #515346;border-radius:22px;padding:26px;background:radial-gradient(ellipse at 100% 0%,#3e3923,transparent 65%),var(--panel)}
.campaign-title{margin:0 0 20px;font-weight:700}
.node{display:flex;align-items:center;gap:12px;border:1px solid #515346;border-radius:12px;padding:13px;background:#20221d}
.node strong,.node small{display:block}
.node small{color:var(--muted);font-size:13px}
.symbol,.step-icon{display:grid;place-items:center;background:#37382e;color:var(--gold);width:39px;height:39px;border-radius:8px;flex:none;font-size:21px;font-weight:800}
.last{border-color:#ae891f}
.last .symbol{background:var(--gold);color:var(--dark)}
.connector{width:1px;height:14px;background:#a9914e;margin-left:33px}
.service{background:var(--paper);color:var(--dark)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;padding-block:70px}
.service .eyebrow{color:#745700}
.service-copy p{margin:0 0 16px;font-size:18px;color:#474942}
.service-copy p:last-child{margin-bottom:0}
.steps{padding-block:74px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
article{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:25px}
article h3{margin-top:18px}
article p,.contact p,.faq details p{color:var(--muted);margin:10px 0 0}
.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding-block:48px 64px}
details{border-bottom:1px solid var(--line);padding:13px 0}
summary{font-weight:700;cursor:pointer}
.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;background:#292b23;border:1px solid #4a4d40;border-radius:20px;padding:42px}
.contact .eyebrow{color:var(--gold);margin:0 0 12px}
.contact .yellow{margin-top:20px}
.brief{padding:24px;border-radius:14px;background:#20221d}
.brief .button{margin-top:14px}
.brief .status{font-size:14px;color:var(--gold)}
.brief .status:empty{display:none}
footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-block:30px;color:var(--muted);font-size:14px}
@media(max-width:850px){.hero{gap:28px}.split{gap:30px}.contact{gap:25px;padding:28px}.cards article{padding:19px}}
@media(max-width:680px){.wrap{width:calc(100% - 36px)}.bar{gap:10px;min-height:66px}.bar nav{display:none}.bar .button{padding:9px 11px;font-size:14px}.hero,.split,.faq,.contact{grid-template-columns:1fr}.hero{padding-block:50px 48px;gap:30px}.split,.steps{padding-block:46px}.cards{grid-template-columns:1fr}.faq{gap:17px;padding-block:36px 42px}.contact{padding:22px}.campaign{padding:18px}.intro{font-size:17px}footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-block:48px}
.about > p{color:var(--muted);margin:0;font-size:18px}
@media(max-width:680px){.about{grid-template-columns:1fr;gap:17px;padding-block:36px}.bar .brand{font-size:16px}.bar .button{font-size:12px}}

/* Editorial layout and page navigation */
:root{--bg:#171813;--paper:#f4efe4;--muted:#d1cfc4}
.wrap{width:min(1240px,calc(100% - 88px))}
.bar{min-height:86px}
.bar nav{gap:22px}
.bar nav a[aria-current]{color:var(--gold)}
.bar .button{border-radius:100px}
.hero{grid-template-columns:1.04fr .96fr;gap:56px;padding-block:52px 68px}
.hero h1{font-size:clamp(57px,6.3vw,100px);line-height:.95}
h1 em{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.05em}
.hero .intro{max-width:41ch}
.hero-photo,.feature-photo{margin:0;position:relative;overflow:hidden;isolation:isolate;background:#363228;border-radius:4px}
.hero-photo{aspect-ratio:1.03}
.hero-photo img,.feature-photo img{width:100%;height:100%;object-fit:cover;display:block}
.hero-photo figcaption{position:absolute;bottom:20px;left:20px;right:20px;width:fit-content;padding:8px 12px;background:#171813e8;color:var(--ink);font-size:13px;border-radius:4px}
.photo-motion img{animation:photo-enter 1.35s cubic-bezier(.18,.73,.26,1) both;transition:scale .65s ease}
.photo-motion:hover img{scale:1.045}
@keyframes photo-enter{from{transform:scale(1.12);opacity:.72}to{transform:scale(1);opacity:1}}
@supports (animation-timeline:view()){
  .feature-photo.photo-motion img{animation:photo-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  @keyframes photo-drift{from{transform:scale(1.14) translateY(-2%)}to{transform:scale(1.05) translateY(1%)}}
}
.text-link{display:inline-block;font-weight:800;margin-top:10px;padding-bottom:2px;border-bottom:1px solid currentColor}
.text-link:hover{color:#a47a00}
.feature{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center;padding-block:68px}
.feature-photo{aspect-ratio:1.55}
.feature p:not(.eyebrow){color:var(--muted);max-width:54ch}
.profile{grid-template-columns:1fr 1fr}
.profile .button{margin-top:8px}
.subhero{padding-block:69px 38px}
.subhero h1{max-width:15ch}
.offer-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}
.lead-offer{grid-row:span 2;background:var(--paper);color:var(--dark);padding:33px}
.lead-offer p:not(.eyebrow){color:#474942}
.lead-offer .eyebrow{color:#725700}
.lead-offer .button{margin-top:14px}
.offer-grid article h3,.steps article h3{margin-top:0}
.steps{padding-block:8px 56px}
.cards{margin-top:0}
.closing{padding-bottom:28px}
.contact{margin-block:55px;align-items:center}
.contact h1{font-size:clamp(45px,6vw,76px)}
footer{border-top:1px solid var(--line)}
@media(max-width:950px){.wrap{width:calc(100% - 52px)}.bar nav{gap:14px}.hero,.feature{gap:32px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.bar{display:grid;grid-template-columns:1fr auto;padding-top:14px;gap:0 10px}.bar nav{display:flex;grid-row:2;grid-column:1/-1;justify-content:space-between;gap:5px;padding:13px 0 10px;font-size:13px}.bar>.button{grid-column:2;grid-row:1}.hero,.feature,.profile,.offer-grid{grid-template-columns:1fr}.hero{padding-block:42px 38px;gap:26px}.hero h1{font-size:clamp(49px,9.2vw,71px)}.hero-photo{aspect-ratio:1.2}.feature{padding-block:42px;gap:23px}.subhero{padding-block:43px 25px}.lead-offer{padding:24px}.contact{margin-block:30px}.profile .feature-photo{order:2}}
@media(prefers-reduced-motion:reduce){.photo-motion img,.feature-photo.photo-motion img{animation:none;transition:none}.photo-motion:hover img{scale:1}}
.button span[aria-hidden]{font-size:0;width:10px;height:10px;position:relative;flex:none;border-top:1.5px solid;border-right:1.5px solid}
.button span[aria-hidden]::after{content:"";position:absolute;top:3px;right:-1px;width:11px;height:1.5px;background:currentColor;transform:rotate(-45deg)}

.profile-portrait{margin:0;position:relative;overflow:hidden;aspect-ratio:14/15;background:#e4e0e2;border-radius:5px}
.profile-portrait picture,.profile-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.profile-portrait figcaption{position:absolute;bottom:18px;left:18px;right:18px;width:fit-content;display:grid;gap:1px;padding:9px 15px;background:#171813ed;color:var(--ink);border-radius:4px}
.profile-portrait figcaption strong{font-size:16px}
.profile-portrait figcaption span{color:var(--muted);font-size:13px}
.testimonials{background:var(--paper);color:var(--dark);padding-block:68px}
.testimonials .eyebrow{color:#745700}
.testimonials-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:end;margin-bottom:30px}
.draft-note{margin:0;color:#525247;font-size:14px;max-width:37ch}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.review-grid figure{display:flex;flex-direction:column;justify-content:space-between;gap:26px;margin:0;background:#fffdf7;border:1px solid #ded7c8;border-radius:10px;padding:24px}
.review-grid blockquote{margin:0;font-size:17px;line-height:1.55}
.review-grid figcaption{color:#575648;font-size:13px;font-weight:700;border-top:1px solid #e5dfd0;padding-top:13px}
.final-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:56px}
.final-cta .button{flex:none}
@media(max-width:760px){.profile-portrait{aspect-ratio:4/5}.testimonials{padding-block:43px}.testimonials-heading,.review-grid{grid-template-columns:1fr}.testimonials-heading{gap:14px;margin-bottom:20px}.final-cta{align-items:flex-start;flex-direction:column;padding-block:38px}}

.brand img{display:block;width:36px;height:36px;object-fit:contain;flex:none}

.bar{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px 28px;
  padding-block:20px;
}
.bar .brand{font-size:clamp(25px,3vw,36px);letter-spacing:-.045em}
.bar .brand img{width:46px;height:46px}
.bar nav{display:flex;justify-content:flex-end;flex-wrap:wrap;column-gap:clamp(14px,2.25vw,30px);row-gap:6px;padding:0}
.bar>.button{grid-column:1/-1;grid-row:2;justify-self:center;font-size:14px;padding:12px 19px}
@media(max-width:760px){
  .bar{gap:14px;padding-block:16px}
  .bar .brand img{width:38px;height:38px}
  .bar nav{grid-row:2;grid-column:1/-1;column-gap:clamp(10px,3vw,20px)}
  .bar>.button{grid-row:3}
}

.hero{padding-block:clamp(50px,7vw,96px);column-gap:clamp(32px,5vw,76px)}
.split,.feature,.testimonials{padding-block:clamp(52px,7.2vw,104px)}
.subhero{padding-block:clamp(54px,7vw,96px) 48px}
.testimonials-heading{margin-bottom:38px}
.review-grid{gap:22px}
.final-cta{padding-block:clamp(48px,6vw,84px)}
.contact{margin-block:clamp(44px,7vw,88px);padding:clamp(24px,5vw,62px);gap:clamp(30px,5vw,68px)}
.brief{padding:clamp(22px,3vw,34px)}
.brief h2{font-size:clamp(24px,3vw,34px)}
.contact-note,.legal-note{font-size:14px}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.footer-legal small{font-size:inherit}
.footer-legal a,.legal-page p a{text-decoration:underline;text-underline-offset:.2em}
.legal-page{max-width:780px;padding-block:clamp(52px,7vw,94px)}
.legal-page h2{margin-top:36px;font-size:clamp(22px,3vw,29px)}
.legal-page p:not(.eyebrow){color:var(--muted)}
.legal-note{border-left:2px solid var(--gold);padding-left:14px}
@media(max-width:760px){.hero,.feature,.split{row-gap:32px}.testimonials-heading{margin-bottom:26px}}

.audit-form{display:grid;gap:17px;margin-top:22px}
.audit-form label{display:grid;gap:7px;font-weight:700}
.audit-form input:not([type=hidden]),.audit-form textarea{width:100%;padding:11px 13px;border:1px solid #73776a;border-radius:7px;background:#171813;color:var(--ink);font:inherit}
.audit-form textarea{resize:vertical;min-height:100px}
.audit-form input::placeholder,.audit-form textarea::placeholder{color:#bdbdaf}
.audit-form .button{margin:0 0 8px}
.audit-form .contact-note{margin:0}
.contact-note a{text-decoration:underline;text-underline-offset:.2em}

:root{--bg:#101116;--panel:#1a1c24;--line:#343640;--ink:#fafafe;--muted:#c5c6d0;--paper:#f4f4f8;--dark:#151720}
.bar{border-bottom:0}
.hero-surface{
  border-block:1px solid #2b2c35;
  background:
    radial-gradient(ellipse at 88% 5%,#49416a88,transparent 42%),
    radial-gradient(ellipse at 5% 100%,#ffc1071e,transparent 32%),
    repeating-linear-gradient(0deg,transparent 0 55px,#ffffff08 55px 56px),
    repeating-linear-gradient(90deg,transparent 0 55px,#ffffff08 55px 56px),
    #101116;
}
.hero-surface .hero{grid-template-columns:1.12fr .88fr;padding-block:clamp(68px,8.5vw,126px)}
.hero-surface h1{font-size:clamp(51px,6.1vw,87px);line-height:1.01;letter-spacing:-.065em}
h1 em{font:inherit;color:var(--gold)}
.hero-surface .eyebrow{background:#ffffff10;border:1px solid #ffffff20;border-radius:100px;padding:6px 11px;width:fit-content;text-transform:none;letter-spacing:0;color:var(--ink)}
.hero-surface .intro{max-width:48ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{border-radius:100px}
.campaign-window{background:#1a1d27;border:1px solid #ffffff22;border-radius:24px;box-shadow:0 30px 75px #0008;overflow:hidden;animation:window-in .75s ease-out both}
@keyframes window-in{from{transform:translateY(14px);opacity:.55}to{transform:translateY(0);opacity:1}}
.window-bar{display:flex;align-items:center;gap:6px;padding:16px 20px;background:#252834}
.window-dots:not([hidden]){display:flex}
.window-dots button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.window-dots button::before{content:"";width:9px;height:9px;border-radius:50%;background:#9599a6}
.window-dots button:hover::before,.window-dots button[aria-pressed="true"]::before{background:var(--gold)}
.window-dots button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.window-bar strong{font-size:13px}
.window-content{padding:19px}
.window-preview{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;align-items:center;padding:12px;background:#11131a;border-radius:13px}
.window-preview img{width:100%;height:112px;object-fit:cover;border-radius:8px}
.window-preview strong,.window-preview small{display:block}
.window-preview small{color:var(--muted);margin-top:5px}
.window-flow{display:grid;gap:7px;padding:0;margin:14px 0 0;list-style:none;counter-reset:campaign-step}
.window-flow button{display:flex;align-items:center;gap:10px;width:100%;background:#252834;color:inherit;border:0;border-radius:8px;padding:10px 11px;font:inherit;font-size:14px;text-align:left;cursor:pointer;transition:background-color .25s ease,box-shadow .25s ease}
.window-flow button:disabled{cursor:default}
.window-flow button:enabled:hover,.window-flow li[aria-current="step"] button{background:#30323c}
.window-flow button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.window-flow button::before{counter-increment:campaign-step;content:counter(campaign-step);display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#ffc10720;color:var(--gold);font-size:12px;font-weight:800}
.window-flow li[aria-current="step"] button{box-shadow:inset 0 0 0 1px #ffc10760}
.home-services,.home-profile{background:#fff;color:var(--dark)}
.home-services{padding-block:clamp(54px,8vw,110px)}
.home-services .eyebrow,.home-profile .eyebrow,.testimonials .eyebrow{color:#69528d}
.home-services h2{max-width:22ch}
.section-intro,.home-profile .feature p:not(.eyebrow){color:#555867}
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}
.service-cards a{display:flex;flex-direction:column;align-items:flex-start;min-width:0;border:1px solid #e0e0e9;border-radius:16px;padding:25px;background:#fff;transition:border-color .2s,background-color .2s}

.service-cards p{color:#555867;margin:12px 0 18px}
.service-cards span{margin-top:auto;color:#614887;font-weight:800}
.home-profile{background:#f2f2f8}
.home-profile .feature-photo{border-radius:16px}
.home-page .testimonials{background:#fff}
.home-page .review-grid figure{background:#fafafe;border-color:#e4e3ea}
@media(max-width:760px){.hero-surface .hero,.service-cards{grid-template-columns:1fr}.hero-surface .hero{padding-block:52px}.campaign-window{max-width:520px}.service-cards{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.campaign-window{animation:none}.service-cards a,.window-flow button{transition:none}}

.offer-grid article,.steps article,.review-grid figure,.campaign-window,.brief{
  transition:border-color .2s,background-color .2s,box-shadow .2s;
}
.brief{border:1px solid transparent}
@media(hover:hover){
  :is(.service-cards a,.home-page .review-grid figure,.offer-grid .lead-offer):hover{
    border-color:#8268a7;
    background:#faf8ff;
    box-shadow:0 6px 20px #8268a71a;
  }
  :is(.offer-grid article:not(.lead-offer),.steps article,.campaign-window,.brief):hover{
    border-color:#9e84c6;
    background:#2a2537;
    box-shadow:0 0 24px #8268a739;
  }
}
@media(prefers-reduced-motion:reduce){
  .offer-grid article,.steps article,.review-grid figure,.campaign-window,.brief{transition:none}
}
