/* Brand book v1 is authoritative. Default is dark; stored choices are explicit. */


body{font-size:18px;line-height:1.6;}p{color:var(--ink-muted);}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:600;}.wrap{max-width:1360px;padding:96px 64px;}.button{min-height:52px;}header{height:96px;padding:8px 4.4vw;background:var(--surface);backdrop-filter:none;}.brand-mark{display:block;width:260px;line-height:0;}.brand-mark img{display:block;width:100%;height:auto;filter:none;}.brand-mark .mark-light{display:none;}html[data-theme=light] .brand-mark .mark-dark{display:none;}html[data-theme=light] .brand-mark .mark-light{display:block;}.header-actions{display:flex;gap:28px;align-items:center;}.header-link{font-size:15px;}.theme-toggle{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:10px 16px;min-height:44px;cursor:pointer;font-size:14px;}.hero{max-width:1440px;margin:auto;min-height:0;display:grid;grid-template-columns:1.4fr .75fr;gap:72px;text-align:left;padding:168px 64px 80px;align-items:center;}.hero-grid{margin:0;max-width:none;}.hero h1{font-size:clamp(64px,6.7vw,100px);line-height:.96;margin:32px 0;}.hero h1 span{color:var(--accent);}.hero-copy{margin:0;max-width:640px;font-size:18px;line-height:1.6;}.hero-tagline{font-family:"Barlow",sans-serif;font-size:20px;letter-spacing:0;color:var(--ink);margin:0 0 20px;font-weight:500;}.hero-actions{justify-content:flex-start;gap:24px;margin-top:32px;}.hero-actions .textlink{font-size:15px;color:var(--ink);}.services{background:var(--surface);border-top:1px solid var(--line);}.section-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:64px;max-width:none;}.section-intro .eyebrow{grid-column:1/-1;}.section-intro h2{margin:20px 0 0;font-size:clamp(44px,5vw,72px);}.section-intro p{font-size:18px;align-self:end;margin:20px 0 0;max-width:480px;}.all-services,.seo-grid{gap:0;grid-template-columns:1fr 1fr;}.service-card{border-radius:var(--radius);background:var(--surface);padding:40px;position:relative;}.service-grid{gap:0;}.service-link h3{font-size:42px;max-width:420px;margin:24px 0;}.service-link p{font-size:18px;max-width:440px;}.service-number{position:absolute;right:32px;top:30px;color:var(--ink-muted);font-size:14px;}.service-card .eyebrow{color:var(--ink-muted);}.card-action{padding-top:40px;font-weight:500;}.card-action:after{content:"";display:inline-block;width:1em;height:1em;flex:none;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M5 5h14v14' fill='none' stroke='black' stroke-width='1.5' 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 19 19 5M5 5h14v14' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;}.work-approach{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;padding-bottom:96px;}.work-approach .eyebrow{grid-column:1/-1;}.work-approach h2{grid-row:2/4;font-size:clamp(48px,5vw,72px);margin:24px 0 0;}.work-approach>p{font-size:18px;margin:24px 0 0;}.closing{padding:96px 24px;background:var(--surface-raised);border-top:1px solid var(--line);}.closing h2{font-size:clamp(52px,6vw,88px);}footer{padding:48px 4.4vw;background:var(--surface);font-size:15px;}.sample-reference,.seo-entry-offer,#form-status,.analytics-choice{border-radius:var(--radius);}.enquiry-grid input,.enquiry-grid textarea,.enquiry-grid select,.preferences select{border-radius:var(--radius);border-color:var(--ink-muted);}.enquiry-grid input:focus,.enquiry-grid textarea:focus{outline:2px solid var(--accent);outline-offset:2px;}.service-hero h1,.enquiry-page h1{font-size:clamp(56px,7vw,96px);}.service-hero{padding-top:160px;}.service-hero>p{font-size:20px;}.back-link{margin-bottom:32px;}.deliverable-grid h3{font-size:32px;}.scope-note h3{font-size:32px;}.sample-reference h3{font-size:36px;}.media-world{height:auto;min-height:0;background:var(--surface);color:var(--ink);}.world-sticky{position:relative;height:auto;min-height:0;padding:80px 5%;overflow:visible;display:grid;grid-template-columns:1fr 1fr;gap:32px;}.world-copy{position:static;max-width:none;}.world-copy h2{color:var(--ink);text-shadow:none;font-size:64px;}.world-copy h2 span,.world-copy .eyebrow{color:var(--accent);}.world-copy p{color:var(--ink-muted);max-width:none;}.world-art{position:static;inset:auto;min-height:0;}.world-fallback{position:static;display:grid;gap:16px;perspective:none;opacity:1!important;}.world-fallback img,.world-fallback img:nth-child(2),.world-fallback img:nth-child(3){position:static;width:100%;border-radius:var(--radius);box-shadow:none;transform:none;}.world-hint,#media-canvas{display:none;}.user-reduced-motion .media-world .world-sticky,.lite-scenes .media-world .world-sticky{height:auto;min-height:0;}.analytics-actions button{background:var(--surface);color:var(--ink);border-color:var(--ink-muted);}
@media (max-width:1000px){.hero{gap:32px;padding:144px 32px 64px;grid-template-columns:1.25fr .75fr;}.hero h1{font-size:72px;}.wrap{padding:72px 32px;}.header-actions{gap:16px;}.brand-mark{width:220px;}.service-link h3{font-size:36px;}.header-link{display:none;}}
@media (max-width:640px){header{height:80px;padding:8px 16px;}.brand-mark{width:180px;}.header-actions{gap:8px;}.theme-toggle{padding:8px 12px;font-size:12px;}.hero{display:block;padding:128px 24px 56px;}.hero h1{font-size:clamp(54px,13.8vw,80px);margin:24px 0;line-height:.98;}.hero .eyebrow{font-size:10px;}.hero-actions{align-items:flex-start;gap:20px;}.wrap{padding:64px 24px;}.section-intro,.work-approach{display:block;}.section-intro h2{font-size:48px;}.section-intro p{margin-top:24px;}.all-services,.seo-grid{grid-template-columns:1fr;}.service-card{padding:32px 24px;}.service-link h3{font-size:36px;max-width:270px;}.service-number{right:24px;top:24px;}.service-grid{margin-top:32px;}.work-approach h2{font-size:56px;}.closing{padding:64px 24px;}.closing h2{font-size:60px;}.service-hero{padding-top:128px;}.service-hero h1,.enquiry-page h1{font-size:56px;}.service-hero>p{font-size:18px;}.world-sticky,.media-world .world-sticky{display:block;height:auto;min-height:0;padding:64px 24px;}.media-world .world-copy{padding:0;}.world-art,.media-world .world-art{margin-top:32px;height:auto;min-height:0;}.world-copy h2{font-size:48px;}.user-reduced-motion .media-world .world-sticky,.lite-scenes .media-world .world-sticky{display:block;}footer{padding:40px 24px;}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.media-world .world-sticky{height:auto;min-height:0;}}

@media (max-width:360px){.brand-mark{width:152px;}.header-actions{gap:6px;}.theme-toggle{padding:8px;font-size:11px;}.hero h1{font-size:52px;}}
/* Static sample gallery retains readable artwork at every width. */
.media-world .world-sticky{display:flex;flex-direction:column;height:auto;min-height:0;}.media-world .world-copy{order:-1;padding:0;margin:0 0 32px;}.media-world .world-art{position:static;width:100%;height:auto;min-height:0;margin:0;}.media-world .world-fallback{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}.media-world .world-art .world-fallback img{position:static;width:100%;height:auto;border-radius:var(--radius);transform:none;box-shadow:none;}.media-world .world-copy p{max-width:600px;}.user-reduced-motion .media-world .world-sticky,.lite-scenes .media-world .world-sticky{display:flex;}
@media (max-width:640px){.media-world .world-fallback{grid-template-columns:1fr;}.media-world .world-art .world-fallback img{width:100%;}}

.footer-intro>p{max-width:360px;}

/* Align the wordmark’s visible left edge with the footer copy at every size. */
.business-footer .brand-mark img{transform:translateX(-6.85624564%);}

/* Thin, theme-aware diagonal arrows for the homepage CTAs. */
.cta-diagonal-arrow{display:inline-block;width:16px;height:16px;flex:none;vertical-align:-2px;margin-inline-start:.35em;}
.card-action--svg:after{content:none;}
.card-action--svg .cta-diagonal-arrow{margin-inline-start:0;}
