:root{--color-primary:#183b4e;--color-primary-dark:#102b39;--color-primary-light:#dde7e9;--color-text:#17252c;--color-text-muted:#5d6a6e;--color-bg:#f5f2eb;--color-bg-alt:#e9eeec;--color-accent:#c56a3d;--radius:2px;--shadow:0 18px 35px rgba(23,37,44,.12);--font-main:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-display:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-main);font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}.container{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{border-bottom:1px solid rgba(24,59,78,.25);background:var(--color-bg);position:relative;z-index:10}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;line-height:1.15}.brand strong{font-family:var(--font-display);font-size:1.45rem;font-weight:700}.brand span{font-size:.72rem;color:var(--color-text-muted);margin-top:5px}.site-nav{display:flex;align-items:center;gap:27px;font-size:.9rem}.site-nav a{transition:color .2s ease}.site-nav a:hover{color:var(--color-accent)}.nav-cta,.button{display:inline-block;padding:.78rem 1.35rem;border:1px solid var(--color-primary);font-weight:700}.nav-cta{background:var(--color-primary);color:var(--color-bg)}.menu-toggle,.mobile-first{display:none}.hero{min-height:calc(100vh - 79px);display:flex;align-items:center;border-bottom:1px solid rgba(24,59,78,.2);overflow:hidden}.hero-grid{display:grid;grid-template-columns:45% 55%;align-items:center;gap:40px}.kicker{margin:0 0 12px;color:var(--color-accent);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.qualification{margin:-6px 0 28px;color:var(--color-text-muted);font-size:.95rem}.hero h1{font-family:var(--font-display);font-size:clamp(3rem,5.5vw,5.25rem);line-height:.98;letter-spacing:-.045em;max-width:650px;margin:0 0 26px}.hero-lead{font-size:1.08rem;max-width:560px;color:#3f4d51}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:34px}.button-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.button{transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-3px);background:var(--color-primary);border-color:var(--color-primary)}.text-link{font-weight:700;border-bottom:1px solid var(--color-accent);padding-bottom:3px}.file-hero{height:520px;position:relative;max-width:570px;width:100%;margin-left:auto}.paper{position:absolute;border:1px solid rgba(24,59,78,.34);width:78%;height:78%;right:7%;top:10%;padding:28px;background:var(--color-bg);transform-origin:center;transition:transform .7s ease}.paper-back{background:var(--color-primary-light);color:var(--color-primary);font-size:.8rem;font-weight:700}.paper-one{transform:rotate(-8deg) translate(-30px,15px)}.paper-two{transform:rotate(6deg) translate(28px,28px);background:#cbdcdf}.paper-front{z-index:2;transform:rotate(-2deg);box-shadow:var(--shadow);overflow:hidden}.paper-front img{display:none;width:100%;height:100%;object-fit:cover}.paper-content{position:absolute;inset:28px;border-top:2px solid var(--color-primary);padding-top:35px;display:flex;flex-direction:column}.paper-line{width:48px;height:4px;background:var(--color-accent);margin-bottom:60px}.paper-content p{font-family:var(--font-display);font-size:2rem;line-height:1.05;margin:0 0 20px}.paper-content strong{font-size:1rem;max-width:260px;font-weight:500}.paper-content small{margin-top:auto;color:var(--color-text-muted);font-size:.74rem}.paper-tab{position:absolute;z-index:3;right:0;bottom:45px;background:var(--color-accent);color:#fff;padding:8px 13px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-pad{padding:120px 0}.studio-section{background:var(--color-bg-alt)}.studio-grid{display:grid;grid-template-columns:38% 1fr;gap:90px}.section-intro h2,.section-heading h2,.contact-preview h2,.work-statement h2,.page-hero h1,.blue-statement h2,.turnkey-paper h2{font-family:var(--font-display);font-weight:700;line-height:1.05;letter-spacing:-.025em}.section-intro h2{font-size:clamp(2.3rem,4vw,3.5rem);margin:0 0 20px}.section-intro>p{color:var(--color-text-muted);max-width:300px}.family-panel{margin-top:60px;background:var(--color-primary);color:var(--color-bg);padding:28px 25px;border-left:5px solid var(--color-accent)}.family-panel span,.family-panel strong{display:block}.family-panel span{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.family-panel strong{font-family:var(--font-display);font-size:2rem;line-height:1.05;margin-top:15px}.studio-text p{border-top:1px solid rgba(24,59,78,.25);padding:23px 0;margin:0;max-width:650px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading h2{font-size:clamp(2.3rem,4vw,3.4rem);max-width:540px;margin:0}.section-heading>p{max-width:330px;color:var(--color-text-muted);margin:0}.service-index{border-top:1px solid var(--color-primary)}.service-row{border-bottom:1px solid rgba(24,59,78,.35);display:grid;grid-template-columns:34% 1fr;position:relative}.service-trigger{grid-column:1/-1;border:0;background:none;padding:25px 0;display:flex;justify-content:space-between;text-align:left;color:var(--color-text);font:700 1.3rem var(--font-display);cursor:pointer}.service-trigger b{font:700 .72rem var(--font-main);text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent)}.service-detail{grid-column:2;padding:0 70px 28px 0;max-width:720px}.service-detail p,.service-static p{margin:0;color:#4c5a5e}.service-row:has(.service-trigger[aria-expanded=true]){background:var(--color-primary-light);padding-left:25px;padding-right:25px}.service-row-compact{grid-template-columns:1fr auto;align-items:center;padding:25px 0}.service-static span{font:700 1.3rem var(--font-display)}.turnkey-section{background:var(--color-primary);padding:135px 0}.turnkey-wrap{min-height:470px;position:relative}.turnkey-paper{position:relative;background:var(--color-bg);border:1px solid var(--color-primary);padding:60px 70px;max-width:720px;margin-left:8%;box-shadow:var(--shadow)}.turnkey-paper:before{content:"";position:absolute;left:-10px;top:28px;bottom:28px;border-left:4px solid var(--color-accent)}.turnkey-paper h2{font-size:clamp(2.4rem,4vw,4rem);margin:0 0 25px}.turnkey-paper p:not(.kicker){max-width:580px}.turnkey-paper .paper-tab{right:-1px;bottom:auto;top:42px}.turnkey-paper .button{margin-top:20px}.work-section{border-bottom:1px solid rgba(24,59,78,.2)}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.work-statement h2{font-size:clamp(2.3rem,4vw,3.7rem);margin:0}.work-copy{border-left:3px solid var(--color-accent);padding-left:30px;max-width:460px}.contact-preview{background:var(--color-primary-light)}.contact-preview-grid{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-preview h2{font-size:clamp(2.2rem,4vw,3.5rem);max-width:600px;margin:0 0 15px}.gallery-section{display:none}.page-hero{background:var(--color-primary);color:var(--color-bg);padding:105px 0}.page-hero-inner{max-width:820px;margin-left:max(24px,calc((100% - 1160px)/2))}.page-hero h1{font-size:clamp(2.8rem,5vw,5rem);margin:0 0 24px}.page-hero p:last-child{max-width:620px;color:#dbe4e2;font-size:1.1rem}.services-detail{background:var(--color-bg-alt)}.blue-statement{background:var(--color-primary);color:var(--color-bg)}.narrow{max-width:690px;margin:0}.blue-statement h2{font-size:clamp(2.5rem,4vw,4rem);margin:0 0 22px}.blue-statement p{max-width:580px;color:#dbe4e2}.contacts-grid{display:grid;grid-template-columns:42% 1fr;gap:100px}.contact-info h2,.contact-form h2{font-family:var(--font-display);font-size:2.5rem;line-height:1.05;margin:0 0 8px}.contact-info>p:not(.kicker){margin-top:0}.contact-list{margin-top:45px;border-top:1px solid rgba(24,59,78,.3)}.contact-list a,.contact-list p{display:block;border-bottom:1px solid rgba(24,59,78,.3);padding:17px 0}.contact-list span{display:block;color:var(--color-text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.cost-note{margin-top:35px;color:var(--color-text-muted)}.contact-form{background:var(--color-bg-alt);padding:42px}.contact-form h2{margin-bottom:30px}.contact-form label:not(.consent){display:block;font-weight:700;font-size:.88rem;margin:18px 0 7px}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;border:1px solid rgba(24,59,78,.45);background:var(--color-bg);padding:13px;font:inherit;color:var(--color-text)}.consent{display:flex;gap:10px;margin:25px 0;font-size:.82rem;line-height:1.4}.consent input{margin-top:4px;accent-color:var(--color-accent)}.map-section{padding-bottom:100px}.map-section iframe{width:100%;height:330px;border:0;filter:grayscale(1) contrast(.9)}.map-link{display:inline-block;margin-top:15px;border-bottom:1px solid var(--color-accent);font-weight:700}.legal-copy{max-width:780px}.legal-copy h2{font-family:var(--font-display);font-size:2rem;margin:0 0 12px}.legal-copy p{margin:0 0 38px}.site-footer{background:var(--color-primary-dark);color:var(--color-bg);padding:38px 0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:25px;font-size:.82rem}.footer-grid div{display:flex;flex-direction:column;gap:5px}.footer-grid strong{font-family:var(--font-display);font-size:1.25rem}.footer-grid a{color:#dce6e4}.reveal{opacity:0;transform:translateX(-18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.reveal-delay{transition-delay:.18s}
@media(max-width:767px){.container{width:min(100% - 40px,600px)}.header-inner{min-height:70px}.brand strong{font-size:1.2rem}.brand span{font-size:.68rem}.menu-toggle{display:block;border:1px solid var(--color-primary);background:none;padding:9px 13px;font:700 .8rem var(--font-main);color:var(--color-primary)}.site-nav{display:none;position:absolute;left:0;right:0;top:70px;background:var(--color-bg);border-bottom:1px solid var(--color-primary);padding:20px;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{padding:13px 0;border-bottom:1px solid rgba(24,59,78,.2)}.site-nav .mobile-first{display:block;order:-1;color:var(--color-accent);font-weight:800}.site-nav .nav-cta{display:none}.hero{min-height:auto;padding:70px 0 90px}.hero-grid{display:flex;flex-direction:column;gap:42px;align-items:stretch}.hero h1{font-size:clamp(2.7rem,12vw,3.5rem)}.hero-lead{font-size:1rem}.hero-actions{flex-wrap:wrap}.file-hero{height:350px;max-width:none}.paper{height:82%;width:82%;right:8%;padding:18px}.paper-content{inset:18px;padding-top:24px}.paper-line{margin-bottom:35px}.paper-content p{font-size:1.55rem}.paper-tab{bottom:20px}.section-pad{padding:78px 0}.studio-grid,.work-grid,.contacts-grid{display:flex;flex-direction:column;gap:48px}.section-intro h2{font-size:2.45rem}.family-panel{margin-top:35px}.studio-text p{padding:20px 0}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:2.5rem;margin-bottom:18px}.service-row{display:block;padding:0!important}.service-row:has(.service-trigger[aria-expanded=true]){padding-left:20px!important;padding-right:20px!important}.service-trigger{padding:23px 0;font-size:1.18rem}.service-detail{padding:0 0 24px}.service-row-compact{padding:23px 0!important}.service-row-compact .text-link{margin-top:18px;display:inline-block}.turnkey-section{padding:78px 0}.turnkey-wrap{min-height:0}.turnkey-paper{margin:0;padding:45px 28px 35px}.turnkey-paper h2{font-size:2.6rem}.turnkey-paper .paper-tab{top:18px}.work-copy{padding-left:20px}.contact-preview-grid{display:block}.contact-preview .button{margin-top:25px;width:100%;text-align:center}.page-hero{padding:75px 0}.page-hero-inner{margin:auto}.page-hero h1{font-size:2.8rem}.contacts-grid{gap:38px}.contact-form{padding:28px 20px}.contact-info h2{font-size:2.3rem}.footer-grid{grid-template-columns:1fr 1fr;gap:25px 18px}.footer-grid strong{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.paper{transition:none}.service-detail{transition:none}}