/* Professional launch: native ivory, evergreen and gold visual system. */
:root{--ink:#193c32;--pine:#173f34;--deep:#102d25;--sage:#55705d;--paper:#faf9f4;--soft:#f0f0e8;--gold:#d2ad60;--line:#d9ded4;--muted:#526458;--shadow:0 12px 34px #173f3409}
[hidden]{display:none!important}html{scroll-padding-top:110px}main,section,aside{min-width:0}section[id],aside[id]{scroll-margin-top:110px}.button{border-radius:0}.wrap{max-width:1440px;padding-left:48px;padding-right:48px}.section{padding-top:76px;padding-bottom:76px}.small-only{display:none}.eyebrow{font-size:10px;letter-spacing:.2em}.section-head h2{font-size:clamp(34px,3.5vw,48px)}
.site-header{height:94px;gap:16px;padding:0 30px;background:#fffefa}.site-header .brand{gap:10px}.site-header .brand svg{width:41px;height:42px}.site-header .gus{font-size:43px}.site-header .brand-detail{font-size:7px;padding-left:10px;letter-spacing:.1em}.site-header nav{gap:19px;margin-left:auto}.site-header nav a{font-size:11px;white-space:nowrap}.site-header .header-contact{min-height:46px;padding:10px 15px;white-space:nowrap;margin-left:6px}.site-header .phone{display:flex;flex-direction:column;gap:3px;white-space:nowrap;min-height:48px;padding:8px 17px;font-size:16px;letter-spacing:0}.phone-caption{font-size:8px;letter-spacing:.12em}
/* The form occupies its own column; the house is never obscured by a floating card. */
.opening{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:0;max-width:1920px;margin:auto;background:var(--deep);align-items:stretch}.opening-presentation{position:relative;min-width:0;display:flex;flex-direction:column}.home-film{height:100%;display:flex;flex-direction:column;min-width:0}.film-frame{position:relative;isolation:isolate;flex:1;min-height:605px;background:#183b30;overflow:hidden}.film-frame>video{width:100%;height:100%;position:absolute;inset:0;display:block;object-fit:cover;object-position:57% center}.film-frame:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0b241cf0 0%,#0b241cb3 24%,#0b241c42 46%,#0b241c00 70%)}.film-corner{position:absolute;z-index:3;bottom:18px;right:22px;font-size:8px;letter-spacing:.14em;color:#fffcf1;background:#102c23c4;padding:6px 8px;pointer-events:none}.opening-intro{position:absolute;left:48px;top:50%;transform:translateY(-56%);z-index:4;max-width:450px;color:#fffdf5;pointer-events:none}.opening-intro .eyebrow{font-size:9px;line-height:1.8;color:#eef1e6;letter-spacing:.22em;max-width:350px;margin-bottom:17px}.opening-intro h1{font-size:clamp(44px,4.25vw,68px);line-height:1.02;margin:0 0 25px;letter-spacing:-.045em;max-width:450px;text-wrap:balance}.opening-intro p{color:#f4f4e9;font-size:14px;line-height:1.75;max-width:315px;margin:0 0 28px}.opening-intro .actions{pointer-events:auto;gap:11px;margin-top:0}.opening-intro .button{min-height:47px;font-size:12px;padding:11px 17px}.opening-intro .button.outline{color:#fffdf3;border-color:#e4e8d9;background:#102b2360}.opening-intro .button.outline:hover{background:#173f34}.opening-intro .button.gold{color:#163c30;background:#d7b363}
.film-caption{display:block;padding:14px 25px;color:#faf7e9;background:var(--deep)}.film-caption b{font:21px/1.3 Georgia,serif;display:block}.film-caption span{display:block;font-size:9px;line-height:1.6;color:#ced8cc;margin-top:4px}.film-caption span a{text-decoration:underline;text-underline-offset:2px}.film-brand-link{position:absolute;inset:12% 8%;z-index:5;border:1px solid transparent}.film-brand-link:focus-visible{outline:3px solid var(--gold);outline-offset:0}
.opening-enquiry{background:#fbfaf5;border-top:3px solid #b99b59;padding:28px 25px 22px;scroll-margin-top:110px;align-self:stretch}.opening-enquiry>.eyebrow{font-size:8px;margin:0 0 12px;letter-spacing:.18em}.opening-enquiry h2{font-size:37px;line-height:1.07;letter-spacing:-.035em;margin:0 0 12px}.quick-intro{font-size:12px;margin:0 0 8px}.opening-enquiry .field-grid{gap:0 11px}.opening-enquiry label{font-size:10px;line-height:1.6;margin:10px 0 7px}.opening-enquiry input:not([type=checkbox]),.opening-enquiry select,.opening-enquiry textarea{padding:9px;min-height:40px;font-size:13px;margin-top:5px;background:#fff;max-width:100%;width:100%;border-radius:0}.opening-enquiry textarea{min-height:75px}.opening-enquiry .optional-details{font-size:10px;margin:8px 0 0;padding:0;border:0}.opening-enquiry .optional-details summary{font-size:10px;min-height:32px;padding:3px 0;cursor:pointer;display:list-item;line-height:1.8}.project-enquiry-form input,.project-enquiry-form textarea,.project-enquiry-form select{box-sizing:border-box;min-width:0;font-weight:400}.enquiry-consent span{font-size:10px;line-height:1.6}.enquiry-consent a{text-decoration:underline;text-underline-offset:2px}.enquiry-consent input{flex-shrink:0}.form-reassurance{font-size:9px;line-height:1.6;margin:10px 0 0;color:var(--muted)}.quick-call{border-top:1px solid var(--line);padding-top:11px;margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:8px}.quick-call span{font-size:9px;color:var(--muted)}.quick-call a{font-size:13px;font-weight:700;min-height:34px;display:flex;align-items:center}.opening-enquiry .button.full{font-size:11px;min-height:43px;padding:10px}
.trust-strip{background:#faf9f3;padding:25px 0;color:var(--pine);border-bottom:1px solid #e1e2d8}.trust-grid{gap:23px}.trust-grid>div{display:flex;align-items:center;gap:18px;border-color:#dce0d4}.trust-grid b{font:600 13px/1.5 Arial,Helvetica,sans-serif;color:var(--pine);margin-bottom:3px}.trust-grid span:not(.trust-symbol){font-size:11px;color:var(--muted);line-height:1.6;display:block}.trust-grid .trust-symbol{font:40px Georgia,serif;line-height:1;color:#a88b4f;min-width:32px;align-self:center}.home-transformation{background:var(--soft);padding-top:46px;padding-bottom:50px}.home-transformation .section-head{margin-bottom:27px;align-items:center}.home-transformation .section-head>div:last-child{display:flex;align-items:center;gap:25px;max-width:590px}.home-transformation .section-head p{font-size:12px;max-width:330px;margin:0}.home-transformation .section-head .button{white-space:nowrap;font-size:11px;min-height:44px}.home-transformation .eyebrow{font-size:9px}.home-transformation h2{font-size:42px}.actual-projects{display:grid;grid-template-columns:1fr;gap:36px}.actual-project{border-bottom:1px solid var(--line);padding-bottom:30px;min-width:0}.actual-project:last-child{border-bottom:0;padding-bottom:0}.actual-project-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.actual-project-head h3{margin:6px 0 0;font-size:29px}.actual-project-head .eyebrow{font-size:9px;margin-bottom:5px}.actual-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.actual-pair>div{min-width:0;background:#e7e9e0;position:relative}.actual-phase{position:absolute;z-index:2;bottom:8px;left:8px;display:block;font-size:10px;padding:5px 9px;background:#3c4740;color:#fff}.actual-phase.after{background:var(--pine)}.actual-pair .picture{background:#e8e8df}.actual-pair .picture a{aspect-ratio:1.45;display:flex;align-items:center;justify-content:center}.actual-pair .picture img{width:100%;height:100%;object-fit:contain;aspect-ratio:auto}.actual-pair .picture:hover img{transform:none}.actual-project>.source-note{margin:10px 0 0}
.actual-projects.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.actual-projects.compact .actual-project{padding:9px 9px 17px;border:0;background:#fffefa;display:flex;flex-direction:column}.actual-projects.compact .actual-project-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px;padding:0 10px;margin:17px 0 0;order:2}.actual-projects.compact .actual-project-head h3{font-size:23px;line-height:1.2}.actual-projects.compact .actual-project-head .eyebrow{font-size:7px;letter-spacing:.13em;margin-bottom:5px}.actual-projects.compact .actual-project-head .text-link{font-size:10px;min-height:35px;margin-top:0}.actual-projects.compact .actual-pair{gap:5px;order:1}.actual-projects.compact .actual-pair .picture a{aspect-ratio:1.23}.actual-projects.compact .source-note{font-size:9px;line-height:1.5;padding:0 10px;order:3;margin-top:10px}.actual-projects.compact .actual-phase{font-size:9px;padding:4px 8px;bottom:7px;left:7px}.original-gallery{padding-top:25px;padding-bottom:65px}
.home-services{background:var(--paper)}.home-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.service-card{background:#fffefa;border-color:#e1e3d9}.service-image-link{display:block}.service-art{position:relative}.service-art>img{aspect-ratio:1.5;object-fit:cover;width:100%;height:auto}.service-art>figcaption{position:absolute;bottom:10px;left:10px;right:10px;width:max-content;max-width:calc(100% - 20px);background:#17372beb;color:#f7f8eb;font-size:8px;padding:4px 6px;line-height:1.5}.service-hero-photo img{aspect-ratio:1.55;object-fit:cover;width:100%;height:auto}.home-service-grid .service-card>div{padding:22px 19px}.home-service-grid h3{font-size:27px;min-height:60px}.home-service-grid p{font-size:12px;min-height:40px;line-height:1.7;margin:10px 0}.home-service-grid .eyebrow{font-size:8px;letter-spacing:.12em}.home-service-grid .text-link{font-size:11px}.home-team{background:#eeefe7;border-top:1px solid #e0e3d6;border-bottom:1px solid #e0e3d6}.story-split{gap:100px;grid-template-columns:1.1fr 1fr}.story-facts strong{font-size:31px}.home-team h2{font-size:46px}.home-reviews{background:#faf9f4}.review-card{box-shadow:none;padding:27px;background:#fffefa}.review-card blockquote{font-size:14px;line-height:1.9}.home-process{border-top:1px solid var(--line)}.process-number{font-size:31px;color:#957338}.process-grid article{padding-top:23px}.process-grid h3{font-size:26px}.home-areas{background:#eff0e8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.area-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #cbd3c6;border-bottom:1px solid #cbd3c6}.area-links a{font:25px/1.3 Georgia,serif;padding:25px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-right:1px solid #cbd3c6}.area-links a:first-child{padding-left:0}.area-links a:last-child{border:0}.area-links a:hover{color:#99732c}.final-enquiry{padding-top:60px;padding-bottom:60px}.final-enquiry .cta{padding:46px 48px}.final-actions{display:flex;flex-direction:column;align-items:center;gap:15px;flex-shrink:0}.final-actions>a:last-child{font-size:13px;color:#e0e7d7;text-decoration:underline;text-underline-offset:5px}.final-enquiry .cta p{margin:20px 0 0;font-size:13px}.team-name-card{padding:38px 30px;background:#e9ece1;border-top:2px solid #b99b59;min-height:310px;display:flex;flex-direction:column;justify-content:center}.team-name-card .eyebrow{font-size:8px;line-height:1.8}.team-monogram{font:68px/1 Georgia,serif;letter-spacing:-.06em;color:#a2854f;margin:15px 0 25px}.team-name-card h2{font-size:30px;margin:0}.team-name-card p{font-size:13px;line-height:1.8;margin-bottom:0}

/* Extend the same materials and quiet hierarchy into the owner's workspace. */
.dashboard-body{background:#f5f5ee}.workspace-header{background:#fffefa}.sidebar{background:#15392e}.sidebar nav a.selected{background:#2d5746;border-left:2px solid var(--gold);border-radius:0}.workspace-content .panel,.stats>div,.manage-card{background:#fffefa;border-color:#d9ded1;box-shadow:none}.upload-choices>a{background:#eef0e6;border-top:2px solid #78927c}.upload-choices>a:last-child{background:#f3eddf;border-top-color:#b79a5b}.workspace-content .button,.workspace-content input,.workspace-content select,.workspace-content textarea{border-radius:1px}.workspace-content h1{letter-spacing:-.04em}.workspace-content .photo-editor,.workspace-content .upload-zone{background:#eff2e8}
@media(min-width:1600px){.site-header{padding-left:48px;padding-right:48px;gap:24px}.site-header nav{gap:26px}.site-header nav a{font-size:12px}.site-header .brand-detail{font-size:8px}.opening{grid-template-columns:minmax(0,1fr) 385px}.opening-enquiry{padding:30px}.opening-intro{left:max(60px,calc((100vw - 1440px)/2));max-width:530px}.opening-intro h1{font-size:72px;max-width:530px}.film-frame{min-height:638px}.opening-intro p{font-size:15px;max-width:350px}.opening-enquiry label{font-size:11px}.opening-enquiry input:not([type=checkbox]),.opening-enquiry select{min-height:43px}.film-caption{padding-left:48px;padding-right:35px}}
@media(max-width:1270px){.site-header{gap:12px;padding-left:24px;padding-right:24px}.site-header nav{gap:14px}.site-header nav a{font-size:10px}.site-header .brand-detail{display:none}.site-header .header-contact{padding:10px 13px}.site-header .phone{font-size:14px;padding:8px 14px}.opening{grid-template-columns:minmax(0,1fr) 325px}.opening-intro{left:34px;max-width:375px}.opening-intro h1{font-size:49px;max-width:390px}.opening-intro p{font-size:13px;max-width:290px}.opening-enquiry{padding:24px 20px}.film-frame{min-height:606px}.film-caption{padding:14px 20px}.film-caption b{font-size:18px}.trust-grid{gap:15px}.trust-grid>div{gap:12px}.trust-grid .trust-symbol{font-size:31px;min-width:23px}.trust-grid b{font-size:12px}.trust-grid span:not(.trust-symbol){font-size:10px}.home-transformation .section-head>div:last-child{max-width:450px;gap:18px}.home-transformation .section-head p{max-width:250px}.home-transformation h2{font-size:36px}.home-service-grid{gap:15px}.home-service-grid h3{font-size:24px}.home-service-grid .service-card>div{padding:20px 15px}.story-split{gap:65px}}
@media(max-width:1080px){html{scroll-padding-top:94px}.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;grid-template-areas:'brand contact menu phone';gap:12px;height:80px}.site-header .brand{grid-area:brand}.site-header .brand-detail{display:block}.site-header .phone{grid-area:phone;display:flex}.site-header .header-contact{grid-area:contact}.site-header .menu-toggle{display:block;grid-area:menu;margin:0;padding:8px 12px}.site-header nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fffdf7;padding:18px 24px;max-height:calc(100dvh - 90px);overflow:auto;box-shadow:var(--shadow);margin:0}.site-header nav.open{display:flex;flex-direction:column;gap:4px}.site-header nav a{font-size:14px;padding:8px;min-height:44px}.opening-intro{left:28px;max-width:330px}.opening-intro h1{font-size:46px}.opening-intro p{max-width:270px}.opening-intro .actions{gap:8px}.opening-intro .button{padding:10px 12px;font-size:11px}.film-frame{min-height:580px}.opening-enquiry{padding-top:25px}.wrap{padding-left:30px;padding-right:30px}.home-transformation .section-head>div:last-child{display:block;max-width:280px}.home-transformation .section-head p{margin:0 0 12px}.actual-projects.compact{gap:15px}.actual-projects.compact .actual-project-head h3{font-size:20px}.actual-projects.compact .actual-project-head{padding:0 4px}.actual-projects.compact .source-note{padding:0 4px}.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-service-grid h3{min-height:0;font-size:28px}.home-service-grid p{min-height:0}.home-service-grid .service-card>div{padding:24px}.home-service-grid .service-art>img{aspect-ratio:1.75}.area-links a{font-size:22px;padding:21px 17px}}
@media(max-width:880px){.opening{grid-template-columns:1fr;background:var(--paper)}.opening-presentation{display:grid;grid-template-rows:auto auto}.home-film{grid-row:1;height:auto}.film-frame{min-height:0;aspect-ratio:16/10;flex:none}.film-frame>video{object-position:center}.film-frame:after{background:linear-gradient(0deg,#102c2340,transparent 25%)}.film-corner{bottom:14px;right:18px}.film-caption{padding:15px 26px}.opening-intro{position:static;transform:none;pointer-events:auto;color:var(--pine);max-width:none;padding:32px 30px 30px;background:#f5f5ed;display:grid;grid-template-columns:1.1fr 1fr;column-gap:28px;grid-row:2}.opening-intro .eyebrow{grid-column:1/-1;color:var(--muted);max-width:none;font-size:8px;margin:0 0 13px}.opening-intro h1{font-size:45px;max-width:none;grid-row:2/4;margin:0;text-wrap:initial}.opening-intro p{font-size:13px;color:var(--muted);max-width:none;margin:0 0 20px;grid-column:2}.opening-intro .actions{grid-column:2}.opening-intro .button.outline{color:var(--pine);background:transparent;border-color:#a9b9a8}.opening-enquiry{margin:0 30px 32px;padding:27px 28px;border:1px solid #d9ded2;border-top:3px solid #b99b59;background:#fffefa;scroll-margin-top:98px}.opening-enquiry h2{font-size:35px}.opening-enquiry h2 br{display:none}.opening-enquiry h2 em{margin-left:7px}.opening-enquiry .field-grid{grid-template-columns:1fr 1fr;gap:0 18px}.opening-enquiry label{font-size:12px}.opening-enquiry input:not([type=checkbox]),.opening-enquiry select,.opening-enquiry textarea{font-size:16px;min-height:46px}.opening-enquiry textarea{min-height:90px}.opening-enquiry .quick-intro{font-size:13px;margin-bottom:14px}.opening-enquiry .optional-details summary{font-size:12px;min-height:39px}.opening-enquiry .button.full{min-height:47px;font-size:12px}.enquiry-consent span{font-size:11px}.form-reassurance{font-size:10px}.quick-call{justify-content:flex-start;gap:20px}.quick-call span{font-size:11px}.quick-call a{font-size:15px}.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.trust-grid>div:nth-child(2){border:0}.trust-grid b{font-size:14px}.trust-grid span:not(.trust-symbol){font-size:11px}.trust-grid .trust-symbol{font-size:35px;min-width:30px}.actual-projects.compact{grid-template-columns:1fr;gap:23px}.actual-projects.compact .actual-pair .picture a{aspect-ratio:1.45}.actual-projects.compact .actual-project{padding:12px 12px 20px}.actual-projects.compact .actual-project-head{justify-content:space-between;align-items:end;padding:0 8px;margin-top:20px}.actual-projects.compact .actual-project-head h3{font-size:28px}.actual-projects.compact .actual-project-head .eyebrow{font-size:8px}.actual-projects.compact .source-note{padding:0 8px;font-size:10px}.actual-projects.compact .actual-phase{font-size:11px;padding:5px 10px}.section-head{gap:22px}.home-team h2{font-size:40px}.story-split{gap:45px}.area-links a{font-size:20px}.section{padding-top:58px;padding-bottom:58px}.home-transformation{padding-top:38px;padding-bottom:42px}.final-enquiry .cta{padding:35px}.team-layout{gap:40px;grid-template-columns:280px 1fr}.team-name-card{padding:28px 23px}}
@media(max-width:680px){html{scroll-padding-top:108px}.site-header{height:98px;min-height:98px;padding:9px 18px 8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand phone' 'menu contact';gap:5px 12px}.site-header .brand{gap:8px}.site-header .brand svg{width:31px;height:33px}.site-header .gus{font-size:35px}.site-header .brand-detail{display:none}.site-header .phone{font-size:14px;padding:6px 12px;min-height:43px}.phone-caption{font-size:7px;letter-spacing:.09em}.site-header .menu-toggle{justify-self:start;font-size:11px;min-height:29px;min-width:79px;padding:4px 10px}.site-header .header-contact{border:0;padding:0;min-height:29px;font-size:11px;justify-self:end;gap:12px;margin:0}.site-header nav{top:100%;max-height:calc(100dvh - 110px)}.site-header nav a{font-size:14px}.wrap{padding-left:22px;padding-right:22px}.section{padding-top:48px;padding-bottom:48px}.film-frame{aspect-ratio:1.45}.film-caption{padding:14px 20px}.film-caption b{font-size:17px}.film-caption span{font-size:8px;max-width:200px}.film-corner{font-size:7px;bottom:12px;right:12px;padding:4px 6px}.opening-intro{display:block;padding:28px 22px}.opening-intro .eyebrow{font-size:8px;letter-spacing:.16em;line-height:1.7;max-width:290px;margin-bottom:14px}.opening-intro h1{font-size:43px;line-height:1.02;letter-spacing:-.04em;margin-bottom:21px;max-width:480px}.opening-intro p{font-size:13px;line-height:1.8;max-width:470px;margin-bottom:23px}.opening-intro .actions{gap:10px}.opening-intro .button{min-height:45px;font-size:11px;padding:11px 17px}.opening-enquiry{margin:0 20px 28px;padding:24px 20px;scroll-margin-top:112px}.opening-enquiry h2{font-size:31px}.opening-enquiry .field-grid{gap:0 12px}.opening-enquiry label{margin:11px 0 8px;font-size:11px}.opening-enquiry .quick-intro{font-size:12px}.quick-call{justify-content:space-between;gap:10px}.quick-call span{font-size:10px}.quick-call a{font-size:14px}.trust-strip{padding:24px 0}.trust-grid{gap:22px 16px}.trust-grid>div{gap:10px;border:0;padding-right:0;align-items:flex-start}.trust-grid .trust-symbol{font-size:29px;min-width:23px;align-self:flex-start}.trust-grid b{font-size:12px}.trust-grid span:not(.trust-symbol){font-size:10px}.home-transformation .section-head{display:block;margin-bottom:24px}.home-transformation h2{font-size:35px}.home-transformation .section-head>div:last-child{max-width:none;display:flex;align-items:flex-start;gap:22px;margin-top:18px}.home-transformation .section-head p{font-size:11px;flex:1;margin:0}.home-transformation .section-head .button{font-size:10px;padding:10px 12px;min-height:42px}.actual-projects.compact .actual-project{padding:8px 8px 16px}.actual-projects.compact .actual-pair .picture a{aspect-ratio:1.12}.actual-projects.compact .actual-project-head{padding:0 7px;margin-top:15px;align-items:flex-start;gap:5px}.actual-projects.compact .actual-project-head h3{font-size:25px}.actual-projects.compact .actual-project-head .text-link{min-height:34px}.actual-projects.compact .source-note{font-size:9px;padding:0 7px}.actual-projects.compact .actual-phase{font-size:9px;padding:4px 8px;bottom:6px;left:6px}.section-head h2{font-size:36px}.section-head{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:25px}.section-head p{font-size:13px;margin:0 0 12px}.home-service-grid{grid-template-columns:1fr;gap:24px}.home-service-grid .service-card>div{padding:25px}.home-service-grid h3{font-size:30px}.home-service-grid p{font-size:13px;margin:12px 0}.home-service-grid .service-art>img{aspect-ratio:1.7}.service-art>figcaption{font-size:8px}.story-split{grid-template-columns:1fr;gap:37px}.home-team h2{font-size:37px}.story-split p{font-size:14px}.story-facts strong{font-size:29px}.story-facts span{font-size:12px}.review-card{padding:24px}.home-process .process-grid{gap:28px 19px}.process-grid h3{font-size:24px}.process-grid p{font-size:13px}.area-links{grid-template-columns:1fr}.area-links a{font-size:24px;border-right:0;border-bottom:1px solid #cbd3c6;padding:22px 0}.final-enquiry .cta{padding:31px 25px;gap:29px}.final-enquiry .cta h2{font-size:35px}.final-actions{align-items:flex-start;gap:18px}.final-actions>a:last-child{font-size:12px}.team-layout{grid-template-columns:1fr;margin-top:35px;gap:35px}.team-name-card{min-height:250px;padding:30px}.team-monogram{font-size:61px;margin:10px 0 22px}.team-name-card h2{font-size:31px}.team-layout>div:first-child{max-width:100%}.workspace-content .panel{padding:22px}.workspace-content .section-head h1{font-size:37px}}
@media(max-width:390px){.opening-enquiry .field-grid{grid-template-columns:1fr}.opening-intro h1{font-size:40px}.opening-enquiry h2 br{display:block}.opening-enquiry h2 em{margin-left:0}.film-caption b,.film-caption span{max-width:none}.trust-grid{gap:20px 12px}.trust-grid .trust-symbol{display:none}.trust-grid b{font-size:12px}.home-transformation h2{font-size:32px}.home-transformation .section-head>div:last-child{display:block}.home-transformation .section-head p{margin-bottom:16px}.opening-intro .button{padding-left:13px;padding-right:13px}.quick-call{flex-wrap:wrap;gap:0 12px}.home-process .process-grid{grid-template-columns:1fr}.footer-grid{gap:27px 22px}}
@media(prefers-reduced-motion:reduce){.picture img,.button{transition:none}.home-film{scroll-behavior:auto}}

.team-layout .portrait-placeholder{padding:0;border:0;background:none;text-align:left;display:block;min-height:0}.team-name-card{width:100%}

.trust-grid .trust-symbol{width:38px;height:44px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}
@media(max-width:1270px){.trust-grid .trust-symbol{width:30px;height:39px}}
@media(max-width:680px){.trust-grid .trust-symbol{width:24px;height:31px}}

/* Let the filmed brand ending be legible without interrupting a focused action. */
@media(min-width:881px){.opening-presentation:has(.film-ending) .opening-intro:not(:focus-within){visibility:hidden}}
.film-ending .film-frame:after{opacity:0}.film-ending .film-corner{visibility:hidden}

.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Persistent selection and direct interaction feedback. */
.site-header nav a[aria-current=page]{color:#173d32;background:#eaf0e4}
.site-header nav a[aria-current=page]:after{height:3px;background:#af8a40;bottom:0}
.site-header nav a{padding-left:5px;padding-right:5px}
.filters .chip[aria-current=page]{box-shadow:inset 0 -3px 0 #d9b568;font-weight:700}
.sidebar nav a[aria-current=page]{box-shadow:inset 3px 0 0 #d9b568;background:#2d5746;color:#fff}
.type-choices label:has(input:checked){background:#e4eddd;border-color:#527451;box-shadow:inset 0 -4px 0 #a58745}
.type-choices label:has(input:focus-visible),.upload-zone:focus-within{outline:3px solid #a88943;outline-offset:3px}
.type-choices label strong{color:var(--pine)}
button:active:not(:disabled),a.button:active,.chip:active,.site-header nav a:active,.sidebar nav a:active{filter:brightness(.9);transform:none}
button:disabled{cursor:not-allowed;opacity:.45}
form[aria-busy=true] button:disabled{cursor:wait;opacity:.8}
.form-submit-status{border-left:3px solid #ab8740;padding:8px 12px;background:#edf2e7;color:#244d34;font-size:12px;font-weight:700}

/* Owner upload layouts remain useful before any files are selected. */
.upload-summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;background:#edf1e6;border-left:3px solid #9a7e43;margin:18px 0 12px}
.upload-summary strong{font-size:14px;white-space:nowrap}.upload-summary>span{font-size:12px;color:#5a6e58}
.upload-help{font-size:12px;line-height:1.75;max-width:850px}.upload-layout-heading{margin:28px 0 18px}
.upload-layout-heading h2{font-size:30px;margin:0 0 12px}.upload-layout-heading p{font-size:13px;max-width:750px;margin:0}
.upload-layout-heading a{text-decoration:underline;text-underline-offset:3px}
.upload-template-pair{gap:20px;align-items:stretch}.workspace-content .upload-zone{border:1px solid #afc0a9;background:#f2f5ec;padding:21px;margin:0;letter-spacing:0;text-align:left;min-width:0}
.upload-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:33px;flex-wrap:wrap}
.upload-panel-heading>label{font-size:12px;letter-spacing:.13em;font-weight:700;margin:0;display:inline-flex;padding:5px 10px;background:#45604a;color:#fff}
[data-upload-role=after] .upload-panel-heading>label{background:#163d31}[data-upload-role=gallery] .upload-panel-heading>label{background:#e4d3a7;color:#213b31}
.upload-count{font-size:11px;color:#50634e}.upload-zone>p{font-size:12px;margin:10px 0;letter-spacing:0}
.upload-empty{min-height:165px;border:1px dashed #a9baa0;background:#fffef8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin:16px 0;color:#6c8066}
.upload-empty svg{width:62px;height:46px;stroke:#879b7c;stroke-width:1.2}.upload-empty>span{font-size:12px}
.upload-zone input[type=file]{background:#fffef9;letter-spacing:0;min-width:0;margin:0 0 7px!important}
.upload-zone .upload-feedback{font-size:11px;line-height:1.7;margin:8px 0;color:#5d7359}
.upload-zone:has(input[aria-invalid=true]){border-color:#a3432d;background:#fff4ee}
.upload-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-top:14px}
.upload-preview:empty{display:none}.upload-preview figure{min-width:0;background:#fff;border:1px solid #d9dfd0}
.upload-preview img{width:100%;height:96px;object-fit:contain;border:0;background:#e6ebdf}
.upload-preview figcaption{font-size:10px;padding:5px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#54634e}
.clear-upload{background:none;border:0;border-bottom:1px solid #9dab9e;padding:3px 0;color:#315638;margin-top:13px;min-height:36px}
.gallery-layout-note{display:flex;align-items:center;gap:23px;padding:17px 0 0}.gallery-layout-note>span{white-space:nowrap;font:23px Georgia,serif;color:#58754e}.gallery-layout-note b{font-weight:400;color:#b19450;margin:0 10px}.gallery-layout-note p{font-size:12px;margin:0}
.upload-error{padding:14px 16px;border-left:3px solid #a3442d;background:#fff0e9;color:#913c28;font-size:13px;line-height:1.7}
.photo-pending-removal{opacity:.55;border:2px dashed #a3442d}.photo-pending-removal:after{content:'Will be removed on save';display:block;color:#8b3526;font-size:11px;margin-top:12px}

/* Manual project galleries: no automatic advancement or motion. */
.project-gallery{min-width:0;background:#edf0e7;border:1px solid #d7dece;margin-bottom:38px}
.gallery-slide{margin:0;padding:0;min-width:0}.gallery-slide>a{display:block;background:#e6eadf}
.gallery-slide img{display:block;width:100%;height:auto;aspect-ratio:1.7;max-height:650px;object-fit:contain}
.gallery-slide figcaption{padding:13px 18px;font-size:12px;line-height:1.65;color:#53664e;background:#fffef8}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid #d5deca;background:#f6f7ef}
.gallery-controls button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:9px 15px;min-height:44px;background:#214a36;border:1px solid #214a36;color:#fff;font-size:12px}
.gallery-position{font-size:12px;font-weight:700;white-space:nowrap;color:#314f33}
.gallery-pips{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:0 14px 13px;background:#f6f7ef}
.gallery-pips button{min-width:34px;min-height:34px;background:#fff;border:1px solid #c4d1bb;font-size:11px;color:#526e45}
.gallery-pips button[aria-pressed=true]{background:#234b36;border-color:#234b36;color:#fff;box-shadow:inset 0 -3px 0 #d2af61}
.project-gallery--card{margin:0}.project-gallery--card .gallery-slide img{aspect-ratio:1.4;max-height:none}
.project-gallery--card .gallery-slide figcaption{padding:10px 13px;font-size:11px}.project-gallery--card .gallery-controls{padding:10px;gap:7px}
.project-gallery--card .gallery-controls button{padding:8px 10px;font-size:11px}.project-gallery--card .gallery-pips{gap:4px;padding:0 10px 12px}.project-gallery--card .gallery-pips button{min-width:30px;min-height:34px}
.gallery-slides:has(.gallery-slide:nth-child(2)):not(.gallery-enhanced .gallery-slides){display:grid;gap:15px}
@media(min-width:1081px){.site-header nav{gap:13px}}
@media(max-width:700px){.upload-summary{align-items:flex-start;flex-direction:column;gap:6px;padding:14px}.upload-template-pair{grid-template-columns:1fr;gap:18px}.workspace-content .upload-zone{padding:17px}.upload-layout-heading h2{font-size:26px}.upload-empty{min-height:140px}.gallery-layout-note{align-items:flex-start;gap:15px}.gallery-controls{padding:11px;gap:9px}.gallery-controls button{padding:9px 11px}.gallery-slide img{aspect-ratio:1.25}.gallery-slide figcaption{padding:11px 14px;font-size:11px}.gallery-pips{gap:5px}.gallery-pips button{min-width:32px}.site-header nav a[aria-current=page]{box-shadow:inset 3px 0 0 #af8a40}.site-header nav a[aria-current=page]:after{display:none}}

.portfolio-design-ideas{border-top:1px solid var(--line);padding-top:48px;margin-top:50px}.portfolio-design-ideas .section-head{align-items:flex-start}.portfolio-design-ideas .section-head p{max-width:760px;margin-bottom:0}.portfolio-design-ideas .section-head>div{flex:1}.portfolio-design-ideas .text-link{flex-shrink:0}

/* A single responsive still remains visible until the film has a frame. */
.film-frame>.film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:57% center}.film-frame>video{opacity:0}.film-has-frame .film-frame>video{opacity:1}
@media(max-width:880px){.film-frame>.film-poster{object-position:center}}
.home-film noscript .source-note{color:#ced8cc;padding:0 20px}
