:root{--navy:#153246;--ink:#172b3a;--ink-soft:#355163;--coral:#e9785d;--sage:#b8d8c5;--sage-deep:#608a78;--cream:#fbfaf6;--paper:#f3f0e8;--line:#d9e1dc;--white:#fffefa;--muted:#657782;--head:'Sora',system-ui,sans-serif;--body:'Inter',system-ui,sans-serif;--serif:'Instrument Serif',Georgia,serif;--wrap:1200px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body.ad-landing{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.ad-landing a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
.container{width:min(var(--wrap),calc(100% - 64px));margin-inline:auto}
.skip-link{position:fixed;z-index:1000;top:10px;left:10px;padding:.7rem 1rem;background:var(--white);color:var(--ink);border-radius:5px;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
.site-nav{position:absolute;inset:0 0 auto;z-index:30;height:88px;color:var(--white);border-bottom:1px solid rgba(255,255,255,.15)}
.nav-inner{width:min(1320px,calc(100% - 64px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand img{width:200px;height:auto;filter:brightness(0) invert(1)}
.nav-links{display:flex;align-items:center;gap:2.2rem}
.nav-links>a{font-size:.78rem;font-weight:600;color:rgba(255,255,255,.8);transition:color .2s}
.nav-links>a:hover{color:var(--sage)}
.nav-links .nav-cta{display:inline-flex;align-items:center;gap:1rem;padding:.76rem 1.08rem;border:1px solid rgba(255,255,255,.38);border-radius:2px;color:var(--white)}
.nav-cta span{font-size:1rem;color:var(--coral)}
.nav-toggle{display:none}
.hero{position:relative;min-height:770px;min-height:min(900px,100svh);padding:150px 0 27px;background:var(--navy);color:var(--white);isolation:isolate;overflow:hidden}
.hero-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(90deg,rgba(14,39,55,.98) 0%,rgba(17,47,65,.93) 44%,rgba(17,47,65,.58) 100%),url('../img/growbiz-hero-background.jpg') center 53%/cover}
.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.26;filter:saturate(.72);mix-blend-mode:screen}
.hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 75% 48%,rgba(184,216,197,.13),transparent 34%),linear-gradient(0deg,rgba(13,36,51,.46),transparent 34%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:2rem;min-height:570px}
.hero-copy{position:relative;z-index:2;padding:2rem 0 1.5rem}
.eyebrow{font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);margin:0 0 1.2rem}
.light-eyebrow{color:#d1e1d8;display:flex;align-items:center;gap:.65rem}
.eyebrow-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(233,120,93,.14)}
h1,h2,h3,p{margin-top:0}
.hero h1{font:600 clamp(3.3rem,6vw,6rem)/1.02 var(--head);letter-spacing:-.07em;margin:0 0 1.4rem;max-width:730px;text-wrap:balance}
.hero h1 em,.contact h2 em{font:italic 400 1.03em var(--serif);letter-spacing:-.035em;color:var(--sage)}
.hero-intro{max-width:490px;font-size:1.02rem;line-height:1.8;color:#d6e1df;margin-bottom:2rem}
.hero-actions{display:flex;align-items:center;gap:1.8rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:1.6rem;min-height:52px;padding:.9rem 1.25rem;border:0;border-radius:2px;font-family:var(--head);font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .25s,background .25s,color .25s}
.button:hover{transform:translateY(-3px)}
.button-coral{background:var(--coral);color:#fff!important;box-shadow:0 12px 28px rgba(10,25,35,.18)}
.button-coral:hover{background:#d96950}
.button-dark{background:var(--navy);color:var(--white)!important}
.button-dark:hover{background:#21465d}
.text-link{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--head);font-size:.76rem;font-weight:700;color:var(--ink);border-bottom:1px solid rgba(23,43,58,.32);padding-bottom:.27rem;transition:gap .2s,color .2s}
.text-link:hover{gap:1rem;color:var(--coral)}
.light-link{color:#fff;border-color:rgba(255,255,255,.45)}
.hero-footnote{display:flex;align-items:center;gap:.55rem;margin-top:2.25rem;color:#bfd0cf;font-size:.7rem;letter-spacing:.025em}
.pin-mark{display:inline-block;flex:none;width:8px;height:8px;border:1px solid var(--coral);border-radius:50%;box-shadow:0 0 0 4px rgba(233,120,93,.14)}
.hero-art{position:relative;width:min(540px,100%);aspect-ratio:1.05;margin:auto;perspective:1100px;transform-style:preserve-3d}
.portrait-frame{position:absolute;z-index:2;left:17%;top:9%;width:66%;height:83%;overflow:hidden;border-radius:46% 46% 2px 2px;background:#d9cfbd;box-shadow:28px 32px 80px rgba(3,18,26,.35);transform:rotateY(-8deg) rotateZ(2deg);transform-style:preserve-3d;transition:transform .35s ease}
.portrait-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,31,43,.25))}
.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-art-ring{position:absolute;border:1px solid rgba(184,216,197,.34);border-radius:50%;transform:rotate(-25deg)}
.ring-one{inset:9% -4% 4% 4%}
.ring-two{inset:18% 1% 12% 12%;border-color:rgba(233,120,93,.5);transform:rotate(28deg)}
.orbit-label{position:absolute;z-index:3;display:flex;align-items:center;gap:.65rem;padding:.68rem .9rem;background:rgba(251,250,246,.96);color:var(--ink);font-family:var(--head);font-size:.66rem;font-weight:600;box-shadow:0 12px 30px rgba(6,26,38,.2)}
.label-top{top:17%;left:-1%;transform:rotate(-4deg)}
.label-bottom{right:-2%;bottom:20%;transform:rotate(3deg)}
.label-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--sage);font-size:.54rem;color:var(--navy)}
.coral-label{background:#f8ddd5;color:#a24f3e}
.hero-stamp{position:absolute;z-index:4;right:4%;top:9%;display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:center;color:var(--white);font-size:.64rem;line-height:1.35}
.hero-stamp>span{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--coral);border-radius:50%;font:700 .65rem var(--head);color:#ff9f85}
.hero-stamp small{font-size:.58rem;color:#dce7e4}
.hero-bottom{display:flex;align-items:center;gap:1rem;color:rgba(237,243,238,.66);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.18);padding-top:1.05rem}
.hero-bottom i{width:3px;height:3px;border-radius:50%;background:var(--coral)}
.hero-location{margin-left:auto;letter-spacing:.04em;text-transform:none}
.section-pad{padding:112px 0}
.intro{position:relative;overflow:hidden;background:var(--cream)}
.intro-layout{display:grid;grid-template-columns:.33fr 1.67fr;gap:5rem;position:relative;z-index:1}
.section-marker{display:flex;align-items:flex-start;gap:.8rem;padding-top:.6rem;font-size:.66rem;color:var(--muted)}
.section-marker span{color:var(--coral);font-family:var(--head);font-weight:700}
.section-marker b{font-weight:500}
.intro-main{display:grid;grid-template-columns:1fr .75fr;column-gap:5rem;align-items:end}
.intro-main .eyebrow{grid-column:1/-1}
h2{font:600 clamp(2.6rem,4.6vw,4.75rem)/1.07 var(--head);letter-spacing:-.065em;color:var(--navy);margin:0;text-wrap:balance}
.serif-accent{font:italic 400 1.05em var(--serif);letter-spacing:-.025em;color:var(--sage-deep)}
.intro-copy{padding-bottom:.3rem}
.intro-copy p,.section-heading>p,.work-head>p,.people-copy>p:not(.eyebrow),.pricing-copy>p:not(.eyebrow){font-size:.87rem;line-height:1.9;color:var(--muted);margin-bottom:1rem}
.intro-copy .text-link{margin-top:.4rem}
.intro-graphic{position:absolute;right:-22px;bottom:-140px;color:rgba(184,216,197,.22);font:600 34rem/.8 var(--head);letter-spacing:-.12em;pointer-events:none}
.services{background:#f0eee6}
.section-heading,.work-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:3rem}
.section-heading>p{max-width:360px;margin:0 2rem .35rem 0}
.service-layout{display:grid;grid-template-columns:1.45fr .55fr;gap:4.5rem;align-items:stretch}
.service-list{border-top:1px solid #cad5ce}
.service-item{display:grid;grid-template-columns:42px 1fr 30px;align-items:start;gap:1rem;padding:1.3rem .25rem 1.35rem;border-bottom:1px solid #cad5ce;transition:padding .25s ease}
.service-item:hover{padding-left:.65rem;padding-right:.65rem}
.service-number{font:600 .62rem var(--head);color:var(--coral);padding-top:.35rem}
.service-item h3{margin:0 0 .33rem;font:600 1rem var(--head);letter-spacing:-.03em;color:var(--navy)}
.service-item p{margin:0;max-width:580px;font-size:.76rem;color:var(--muted);line-height:1.65}
.service-mark{font-size:1.1rem;color:#a3b9ad;transition:transform .2s,color .2s}
.service-item:hover .service-mark{transform:translate(3px,-3px);color:var(--coral)}
.service-note{position:relative;overflow:hidden;min-height:430px;padding:2.2rem;background:var(--navy);color:var(--white)}
.note-symbol{display:flex;align-items:center;gap:4px;margin-bottom:2.3rem}
.note-symbol span{display:block;width:19px;height:19px;border:1px solid var(--sage);border-radius:50%}
.note-symbol span:nth-child(2){background:var(--coral);border-color:var(--coral);transform:scale(.56)}
.note-symbol span:nth-child(3){width:42px;height:1px;border:0;border-radius:0;background:rgba(184,216,197,.6)}
.note-kicker{color:var(--sage);text-transform:uppercase;letter-spacing:.16em;font:700 .59rem var(--head)}
.service-note h3{position:relative;z-index:1;font:600 1.9rem/1.14 var(--head);letter-spacing:-.06em;margin:0 0 1rem}
.service-note>p:not(.note-kicker){position:relative;z-index:1;color:#c1d1d0;font-size:.78rem;line-height:1.8;max-width:260px}
.note-link{position:relative;z-index:1;display:inline-flex;gap:1rem;align-items:center;margin-top:1.2rem;color:#ffad96;font:700 .7rem var(--head);border-bottom:1px solid rgba(255,173,150,.45);padding-bottom:.4rem}
.note-link:hover{color:white}
.note-orbit{position:absolute;width:280px;height:280px;border:1px solid rgba(184,216,197,.19);border-radius:50%;right:-145px;bottom:-130px;box-shadow:0 0 0 25px rgba(184,216,197,.025),0 0 0 52px rgba(233,120,93,.035);transform:rotate(-25deg)}
.work{background:var(--cream)}
.work-head{margin-bottom:2.8rem}
.work-head>p{max-width:280px;margin:0 0 .25rem}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.4rem 1.15rem}
.project-card{display:block;min-width:0}
.project-image{position:relative;overflow:hidden;aspect-ratio:1.46;background:#e4e4db}
.project-image::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(16,35,46,.24));opacity:.6}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.project-card:hover .project-image img{transform:scale(1.055)}
.project-open{position:absolute;z-index:2;right:12px;top:12px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--cream);color:var(--navy);transform:translateY(7px);opacity:0;transition:transform .25s,opacity .25s}
.project-card:hover .project-open,.project-card:focus-visible .project-open{transform:none;opacity:1}
.project-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.8rem}
.project-meta>div>span{display:block;color:var(--sage-deep);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.22rem}
.project-meta h3{font:600 .83rem var(--head);letter-spacing:-.02em;color:var(--navy);margin:0}
.project-index{font:500 .61rem var(--head);color:#96a69f}
.work-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:3rem;padding-top:1.2rem;color:var(--muted);font-size:.74rem}
.pricing{background:#e9eee8}
.pricing-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:6rem;align-items:center}
.pricing-copy h2{font-size:clamp(2.55rem,4.2vw,4.2rem);margin-bottom:1.25rem}
.pricing-copy>p:not(.eyebrow){max-width:430px;margin-bottom:1.8rem}
.price-panels{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;align-items:start}
.price-panel{padding:1.5rem 1.4rem 1.65rem;background:var(--white);border-top:3px solid var(--coral);box-shadow:0 18px 40px rgba(23,43,58,.07)}
.price-panel-sage{border-color:var(--sage-deep)}
.price-type{font:700 .65rem var(--head);color:var(--muted)}
.price-amount{font:600 clamp(2.4rem,4vw,3.4rem)/1 var(--head);letter-spacing:-.075em;color:var(--navy);margin:.8rem 0 .3rem}
.price-amount>span{font-size:.82rem;letter-spacing:0;vertical-align:top;margin-right:.2rem}
.price-amount small{font-size:1.2rem;color:var(--coral)}
.price-unit{font-size:.64rem;color:var(--muted);margin:0}
.price-rule{height:1px;background:var(--line);margin:1.1rem 0}
.price-panel>p:last-child{font-size:.72rem;line-height:1.7;color:var(--muted);margin:0}
.pricing-disclaimer{grid-column:1/-1;color:#64756e;font-size:.65rem;line-height:1.6;margin:.25rem 0 0}
.people{background:var(--cream)}
.people-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:7rem;align-items:center}
.people-image{position:relative;min-height:500px;perspective:900px}
.people-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:rotateY(3deg) rotateZ(-1deg);box-shadow:20px 25px 0 var(--sage);transition:transform .4s}
.image-caption{position:absolute;bottom:-18px;left:22px;right:-18px;display:flex;justify-content:space-between;padding:.85rem 1rem;background:var(--navy);color:#dbe5e1;font-size:.62rem;letter-spacing:.04em}
.image-caption span:last-child{color:var(--sage)}
.people-copy h2{margin-bottom:1.25rem}
.people-copy>p:not(.eyebrow){max-width:420px;margin-bottom:1.5rem}
.team-list{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1.4rem;margin:1.7rem 0}
.team-list>div{display:flex;align-items:center;gap:.65rem}
.team-initial{display:grid;place-items:center;width:35px;height:35px;background:#e6eee7;color:var(--sage-deep);border-radius:50%;font:700 .62rem var(--head)}
.team-list p{margin:0;line-height:1.4}
.team-list strong,.team-list small{display:block}
.team-list strong{font-size:.72rem;color:var(--navy)}
.team-list small{font-size:.62rem;color:var(--muted)}
.contact{position:relative;overflow:hidden;background:var(--navy);color:var(--white)}
.contact-shape{position:absolute;right:-210px;top:-270px;width:760px;height:760px;border:1px solid rgba(184,216,197,.15);border-radius:50%;box-shadow:0 0 0 38px rgba(184,216,197,.025),0 0 0 78px rgba(233,120,93,.025);pointer-events:none}
.contact-layout{position:relative;display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem;align-items:start}
.contact-copy{padding-top:1rem}
.contact h2{color:var(--white);font-size:clamp(3rem,5.2vw,5.2rem);margin-bottom:1.3rem}
.contact-copy>p:not(.eyebrow){color:#c1d2d0;max-width:380px;font-size:.84rem;line-height:1.8;margin-bottom:2.2rem}
.contact-details{display:grid;gap:1.2rem}
.contact-details>a,.contact-details>div{display:flex;align-items:center;gap:.8rem;color:#f1f2ec;font-size:.76rem}
.contact-details small{display:block;margin-bottom:.16rem;color:#98b0ae;font-size:.59rem;text-transform:uppercase;letter-spacing:.11em}
.contact-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(184,216,197,.4);border-radius:50%;color:var(--sage);font:600 .7rem var(--head)}
.contact-details a:hover{color:var(--sage)}
.enquiry-form{position:relative;background:var(--cream);color:var(--ink);padding:2rem 2.15rem 1.8rem;box-shadow:0 28px 70px rgba(2,18,27,.28)}
.form-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.45rem;padding-bottom:1rem;border-bottom:1px solid var(--line);font:600 .91rem var(--head);color:var(--navy)}
.form-required{font:500 .6rem var(--body);color:var(--muted)}
.form-required b,.enquiry-form label b{color:var(--coral)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.enquiry-form label:not(.consent-check):not(.honeypot){display:block;margin-bottom:.95rem;color:#475c66;font-size:.64rem;font-weight:600}
.enquiry-form label>b{padding-left:.15rem}
.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{display:block;width:100%;margin-top:.35rem;padding:.74rem .8rem;border:1px solid #d5ded8;border-radius:1px;background:#fffefa;color:var(--ink);font-size:.72rem;outline:none;transition:border-color .2s,box-shadow .2s}
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--sage-deep);box-shadow:0 0 0 3px rgba(96,138,120,.12)}
.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#a1ada8}
.enquiry-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23657882' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;padding-right:2rem}
.enquiry-form textarea{resize:vertical;min-height:88px}
.message-label{margin-bottom:.8rem!important}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.consent-check{display:flex;align-items:flex-start;gap:.55rem;color:var(--muted);font-size:.63rem;line-height:1.6;margin:.3rem 0 1.1rem}
.consent-check input{flex:none;width:15px;height:15px;margin:2px 0 0;accent-color:var(--sage-deep)}
.consent-check a{color:var(--navy)!important;text-decoration:underline!important;text-underline-offset:2px}
.form-submit-row{display:flex;align-items:center;gap:1.1rem}
.form-submit{min-width:190px}
.form-submit:disabled{opacity:.7;cursor:wait;transform:none}
.form-note{margin:0;color:#86948f;font-size:.58rem}
.form-feedback{min-height:0;margin-top:0;font-size:.72rem;font-weight:600}
.form-feedback:not(:empty){margin-top:1rem;padding:.75rem .9rem;border-left:3px solid var(--sage-deep);background:#e9f1eb;color:#294c3d}
.form-feedback.is-error{border-color:var(--coral);background:#fff0eb;color:#883d2b}
.last-word{padding:75px 0;background:var(--paper)}
.last-word-inner{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:1.4rem}
.last-word-mark{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--coral);border-radius:50%;font:600 1.25rem var(--head);color:var(--coral)}
.last-word p{font:500 clamp(1.2rem,2.2vw,1.8rem)/1.45 var(--head);letter-spacing:-.04em;color:var(--navy);margin:0}
.last-word p em{font:italic 400 1.1em var(--serif);color:var(--sage-deep)}
.last-word-inner>a{font:700 .67rem var(--head);color:var(--muted);display:flex;gap:.8rem}
.last-word-inner>a:hover{color:var(--coral)}
.site-footer{background:var(--cream);border-top:1px solid var(--line)}
.footer-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.footer-brand img{width:160px;height:auto}
.footer-inner p,.footer-inner>a:not(.footer-brand),.footer-inner>span{font-size:.61rem;color:var(--muted);margin:0}
.footer-inner>a:not(.footer-brand):hover{color:var(--coral)}
@media(max-width:1000px){
 .hero{min-height:760px;min-height:100svh;padding-top:125px}
 .hero-grid{grid-template-columns:1fr .85fr;gap:1rem}
 .hero h1{font-size:clamp(3.1rem,7vw,5rem)}
 .hero-art{width:110%}
 .intro-layout{gap:2.5rem}
 .intro-main{column-gap:2.5rem}
 .service-layout{gap:2rem;grid-template-columns:1.2fr .8fr}
 .people-layout{gap:4rem}
 .contact-layout{gap:3rem}
}
@media(max-width:760px){
 html{scroll-padding-top:72px}
 .container{width:min(100% - 40px,var(--wrap))}
 .site-nav{height:72px}
 .nav-inner{width:calc(100% - 40px)}
 .brand img{width:170px}
 .nav-toggle{position:relative;z-index:33;display:grid;gap:6px;width:43px;height:43px;place-content:center;border:1px solid rgba(255,255,255,.38);background:transparent;color:white}
 .nav-toggle span{width:18px;height:1px;background:white;transition:transform .2s}
 .nav-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
 .nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .nav-links{position:absolute;top:0;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:88px 24px 22px;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.2);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s}
 .nav-links.is-open{opacity:1;visibility:visible;transform:none}
 .nav-links>a{padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:.9rem}
 .nav-links .nav-cta{margin-top:1rem;padding:.85rem 1rem;justify-content:space-between;border:1px solid rgba(255,255,255,.3)}
 .hero{min-height:auto;padding:125px 0 20px}
 .hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;min-height:0}
 .hero-copy{padding:1rem 0 0}
 .hero h1{font-size:clamp(3rem,11vw,5rem);max-width:620px}
 .hero-intro{max-width:560px;font-size:.92rem}
 .hero-art{width:min(430px,92vw);margin:-.2rem auto .7rem;aspect-ratio:1.18}
 .portrait-frame{left:20%;width:60%;height:85%;top:6%}
 .label-top{left:0;top:18%}
 .label-bottom{right:0;bottom:15%}
 .hero-stamp{top:5%;right:5%}
 .hero-bottom{flex-wrap:wrap;gap:.65rem;font-size:.55rem}
 .hero-location{width:100%;margin:.25rem 0 0}
 .section-pad{padding:78px 0}
 .intro-layout{display:block}
 .section-marker{margin-bottom:2.2rem}
 .intro-main{display:block}
 .intro-main h2{margin-bottom:1.5rem}
 .intro-copy{max-width:600px}
 .intro-graphic{font-size:22rem;right:-40px;bottom:-75px}
 .section-heading,.work-head{display:block;margin-bottom:2.2rem}
 .section-heading>p,.work-head>p{margin:1rem 0 0;max-width:480px}
 .service-layout{grid-template-columns:1fr;gap:2rem}
 .service-note{min-height:360px}
 .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.7rem .85rem}
 .project-image{aspect-ratio:1.35}
 .project-meta h3{font-size:.74rem}
 .work-footer{align-items:flex-start;gap:1rem;flex-direction:column}
 .pricing-layout{grid-template-columns:1fr;gap:2.5rem}
 .pricing-copy h2{font-size:clamp(2.5rem,8vw,3.7rem)}
 .people-layout{grid-template-columns:1fr;gap:3.5rem}
 .people-image{min-height:410px;margin-right:1rem}
 .people-copy{max-width:620px}
 .contact-layout{grid-template-columns:1fr;gap:2.5rem}
 .contact-copy{max-width:600px}
 .contact-details{grid-template-columns:1fr 1fr}
 .enquiry-form{padding:1.5rem}
 .last-word-inner{grid-template-columns:52px 1fr;gap:1rem}
 .last-word-mark{width:46px;height:46px}
 .last-word-inner>a{grid-column:2}
 .footer-inner{padding:1.4rem 0;flex-wrap:wrap;justify-content:flex-start;gap:.6rem 1.2rem}
 .footer-brand{width:100%}
}
@media(max-width:480px){
 .container{width:calc(100% - 36px)}
 .hero h1{font-size:clamp(2.75rem,12vw,3.7rem)}
 .hero-actions{gap:1.05rem;flex-wrap:wrap}
 .hero-actions .button{min-height:49px;padding:.78rem .95rem;gap:.9rem;font-size:.7rem}
 .hero-footnote{font-size:.61rem}
 .hero-art{width:100%;margin-top:.3rem}
 .orbit-label{padding:.55rem .62rem;font-size:.54rem;gap:.42rem}
 .label-icon{width:20px;height:20px}
 .hero-stamp{font-size:.53rem}
 .hero-stamp>span{width:36px;height:36px;font-size:.56rem}
 h2{font-size:clamp(2.45rem,10vw,3.4rem)}
 .service-item{grid-template-columns:29px 1fr 20px;gap:.55rem;padding:1.1rem 0}
 .service-item h3{font-size:.88rem}
 .service-item p{font-size:.7rem}
 .service-note{padding:1.6rem;min-height:345px}
 .portfolio-grid{gap:1.35rem .65rem}
 .project-meta{align-items:flex-start}
 .project-meta>div>span{font-size:.5rem}
 .project-meta h3{font-size:.66rem;line-height:1.4}
 .project-index{font-size:.54rem}
 .price-panels{grid-template-columns:1fr;gap:.75rem}
 .pricing-disclaimer{grid-column:auto}
 .price-panel{padding:1.25rem}
 .people-image{min-height:330px}
 .team-list{gap:.85rem .45rem}
 .team-list strong{font-size:.66rem}
 .team-list small{font-size:.57rem}
 .contact-details{grid-template-columns:1fr}
 .contact h2{font-size:clamp(2.8rem,12vw,4rem)}
 .enquiry-form{padding:1.2rem 1rem}
 .form-row{grid-template-columns:1fr;gap:0}
 .form-submit-row{align-items:flex-start;flex-direction:column;gap:.7rem}
 .form-submit{width:100%;justify-content:space-between}
 .last-word{padding:55px 0}
 .last-word p{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
