:root{--navy:#182243;--navy-deep:#111a34;--slate:#536c7c;--steel:#78929a;--accent:#7b949c;--paper:#f8f8f5;--ink:#17191b;--line:#dadddc;--muted:#586064}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65;background:var(--paper);color:var(--ink)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:-.045em;line-height:1.1}h1{font-size:clamp(52px,6.3vw,100px)}h2{font-size:clamp(35px,4.2vw,61px)}h3{font-size:26px;line-height:1.22;letter-spacing:-.03em}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #728d9c;outline-offset:5px}img{display:block;max-width:100%}.wrap{width:min(1280px,calc(100% - 100px));margin:auto}.section{padding:104px 0}.eyebrow{font-size:16px;font-weight:600;letter-spacing:.15em;margin-bottom:23px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:53px;padding:15px 23px;background:var(--navy);color:white;border:1px solid var(--navy);font-size:16px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--slate);border-color:var(--slate);transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.button.light{background:var(--accent);border-color:var(--accent);color:#111}.button.light:hover{background:white}.button.small{min-height:45px;padding:11px 20px;gap:24px}.text-link{font-size:16px;font-weight:600;display:inline-flex;gap:27px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:6px}.text-link:hover{color:var(--slate)}.skip{position:fixed;top:-100px;left:20px;padding:15px;background:white;z-index:100}.skip:focus{top:15px}.topline{background:var(--navy);color:white;font-size:16px;letter-spacing:.1em}.topline .wrap{display:flex;justify-content:space-between;align-items:center;min-height:34px}.topline a{letter-spacing:0;font-size:16px}.topline a span{margin-left:12px}.header{background:var(--paper);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:96px;gap:35px}.brand{display:block;flex-shrink:0}.brand img{width:86px;height:83px;object-fit:contain}.header nav{display:flex;align-items:center;gap:30px;font-size:16px;font-weight:500}.header nav>a:not(.button){padding:25px 0}.header nav>a:hover{color:var(--slate)}.menu-button{display:none}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;max-width:1600px;margin:auto;min-height:650px;background:var(--navy);color:white}.hero-copy{padding:65px 50px 30px max(50px,calc((100vw - 1280px)/2));display:flex;flex-direction:column;justify-content:center}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;font-size:16px;margin-bottom:31px}.status-dot{height:6px;width:6px;display:inline-block;background:var(--accent);border-radius:100%}.hero h1{font-size:clamp(48px,6.5vw,94px);font-weight:600;line-height:1.015;margin-bottom:25px;letter-spacing:-.055em}.hero em{font-style:normal;color:#fff}.hero-lead{font-size:16px;max-width:330px;line-height:1.75;margin-bottom:29px;color:#fff}.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.hero-secondary{font-size:16px;display:flex;gap:20px}.hero-foot{display:flex;justify-content:space-between;gap:13px;border-top:1px solid #ffffff38;padding-top:23px;margin-top:52px;font-size:16px;letter-spacing:.1em;color:white}.hero-image{position:relative;overflow:hidden;min-height:650px}.hero-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}.image-label{position:absolute;bottom:24px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:16px;letter-spacing:.12em;z-index:1;gap:20px}.image-stamp{position:absolute;right:24px;top:25px;background:var(--accent);color:#111;padding:20px 22px;font-family:Manrope,sans-serif;letter-spacing:-.02em;line-height:1.3;font-weight:600;font-size:17px;transform:rotate(3deg)}.image-stamp span{display:block;text-align:right;font-size:24px;padding-top:13px}.intro-strip{background:var(--accent);border-bottom:1px solid #657f87}.intro-strip .wrap{display:flex;justify-content:space-between;align-items:center;padding:30px 0;gap:24px}.intro-strip p{margin:0;font-family:Manrope,sans-serif;font-size:19px;line-height:1.35;font-weight:600;letter-spacing:-.03em}.intro-strip span{font-size:16px}.intro-strip a{font-size:29px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;font-size:16px;line-height:1.8;margin-bottom:5px}.services .section-heading{margin-bottom:55px}.service-list{border-top:1px solid var(--line)}.service-list>a{display:grid;grid-template-columns:45px 1fr 250px 45px;align-items:center;gap:30px;padding:31px 0;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.service-list>a:hover{padding-left:15px;padding-right:15px;background:#eef0ed}.service-number{font-size:16px;align-self:start;padding-top:9px;color:var(--slate)}.service-list h3{margin-bottom:8px;font-size:30px}.service-list p{font-size:16px;margin:0}.service-tags{font-size:16px;letter-spacing:.1em;text-align:right}.service-arrow{font-size:33px;text-align:right}.door-section{background:#e9edec}.door-layout{display:grid;grid-template-columns:.72fr 1.4fr;gap:70px}.door-tabs{padding-top:3px}.door-tabs>button{border:0;border-bottom:1px solid #c7d0d0;background:transparent;display:flex;align-items:center;text-align:left;gap:17px;width:100%;padding:22px 12px;font-family:Manrope,sans-serif;letter-spacing:-.02em;font-size:20px;font-weight:600;transition:background .2s}.door-tabs>button span{font-family:Inter,sans-serif;font-size:16px;font-weight:400;letter-spacing:0}.door-tabs>button b{margin-left:auto;font-weight:400;font-size:24px}.door-tabs>button[aria-selected=true]{background:var(--navy);color:white;border-color:var(--navy)}.door-tabs>button:hover:not([aria-selected=true]){background:#d7dfdc}.door-tabs>p{font-size:16px;line-height:2;margin-top:35px;padding-left:12px}.door-tabs .text-link{font-size:16px}.door-photo{position:relative;height:425px;background:var(--navy);overflow:hidden}.door-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.door-photo span{position:absolute;bottom:16px;left:18px;font-size:16px;letter-spacing:.12em;padding:8px 10px;background:white;color:#111}.door-detail{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:26px 0 0}.door-detail .eyebrow{font-size:16px;margin-bottom:10px}.door-detail h3{font-size:24px;margin-bottom:12px}.door-detail p:last-child{font-size:16px;margin-bottom:0;max-width:460px;line-height:1.8}.circle-arrow{width:44px;height:44px;display:grid;place-items:center;border-radius:100%;background:var(--navy);color:white;font-size:23px;flex-shrink:0}.work{overflow:hidden;background:var(--navy);color:white}.work .section-heading{margin-bottom:42px}.gallery-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.gallery-tools p{width:100%;font-size:16px;margin-bottom:10px}.round{border:1px solid #ffffff60;color:white;background:transparent;width:40px;height:40px;border-radius:50%}.round:hover{background:white;color:var(--navy)}.gallery-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#7d8c9c transparent;padding:0 max(50px,calc((100vw - 1280px)/2)) 20px}.gallery-card{width:calc((100vw - 144px)/2.65);max-width:500px;min-width:320px;flex-shrink:0;border:0;padding:0;position:relative;text-align:left;background:#293551;color:white;scroll-snap-align:center;height:440px;overflow:hidden}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-card:hover img{transform:scale(1.04)}.gallery-card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#000b)}.gallery-card>span{position:absolute;bottom:26px;left:25px;right:25px;z-index:1}.gallery-card small{display:block;font-size:16px;letter-spacing:.12em;margin-bottom:10px}.gallery-card strong{font-family:Manrope,sans-serif;font-size:23px;letter-spacing:-.04em;font-weight:500;display:block;padding-right:25px;line-height:1.25}.gallery-card b{position:absolute;right:0;bottom:0;font-size:26px;font-weight:400}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:18px}.gallery-bottom>span{font-size:16px;letter-spacing:.13em}.gallery-bottom .text-link{font-size:16px}.work .text-link:hover{color:var(--accent)}.about{background:var(--accent)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px;align-items:center}.portrait{position:relative;width:100%;max-width:440px}.portrait>img{width:100%;height:540px;object-fit:cover;object-position:top}.experience{position:absolute;bottom:48px;right:-35px;background:var(--navy);color:white;display:flex;align-items:center;gap:20px;padding:25px}.experience strong{font-family:Manrope,sans-serif;font-size:52px;font-weight:500;line-height:1;letter-spacing:-.06em}.experience span{font-size:16px;line-height:1.7;letter-spacing:.13em}.about-copy h2{font-size:clamp(36px,3.5vw,51px);margin-bottom:27px}.large-copy{font-family:Manrope,sans-serif;font-size:21px;line-height:1.4;letter-spacing:-.025em;font-weight:500}.about-copy>p:not(.eyebrow):not(.large-copy){font-size:16px;max-width:430px;line-height:1.9}.about-copy .button{margin-top:15px}.about-signoff{display:flex;gap:20px;align-items:center;font-size:16px;border-top:1px solid #657f87;margin-top:28px;padding-top:20px}.about-signoff strong{font-family:Manrope,sans-serif;font-size:16px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card-image{height:265px;position:relative;overflow:hidden;background:#ddd}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.journal-card:hover .card-image img{transform:scale(1.04)}.card-image .circle-arrow{position:absolute;bottom:15px;right:15px;width:37px;height:37px;font-size:20px;background:white;color:#111}.card-meta{display:flex;justify-content:space-between;font-size:16px;letter-spacing:.06em;text-transform:uppercase;margin:20px 0 14px}.card-meta span{color:var(--muted)}.journal-card h3{font-size:24px;line-height:1.25;margin-bottom:15px}.journal-card p{font-size:16px;line-height:1.8;color:#353b3e}.journal-card .text-link{font-size:16px;margin-top:5px}.contact{background:var(--slate);color:white}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:105px}.contact h2{font-size:clamp(38px,4vw,59px);line-height:1.12;margin-bottom:30px}.contact-grid>div>p:not(.eyebrow){max-width:355px;font-size:16px;margin-bottom:32px}.contact-phone{font-family:Manrope,sans-serif;font-size:32px;letter-spacing:-.035em;display:block;line-height:1.5}.contact-phone span{margin-left:20px}.contact-email{font-size:16px;display:inline-block;border-bottom:1px solid #ffffff70;padding-bottom:6px;margin-top:8px}.contact .contact-note{font-size:16px!important;margin-top:30px;letter-spacing:.06em}.contact form{background:var(--paper);color:#111;padding:33px}.contact form h3{font-size:26px;margin-bottom:24px}label{display:block;font-size:16px;font-weight:500;margin-bottom:17px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #c4c9c6;background:transparent;display:block;min-height:40px;border-radius:0;padding:7px 0;font-size:16px;color:#111;resize:vertical}select{padding-right:20px}input:focus,select:focus,textarea:focus{outline-offset:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form .button{width:100%;margin-top:5px}.form-note{font-size:16px;line-height:1.6;color:#424a4c;margin-top:15px;margin-bottom:12px}.privacy-link{font-size:16px;text-decoration:underline}#email-status{font-size:16px;line-height:1.6;margin:12px 0}footer{background:#151615;color:white;padding:52px 0 23px}.footer-top{display:grid;grid-template-columns:140px 1fr 1fr;gap:30px;align-items:center;padding-bottom:40px}.footer-top .brand img{width:112px;height:108px}.footer-top>p{font-family:Manrope,sans-serif;font-size:28px;letter-spacing:-.03em;line-height:1.3;margin:0}.footer-top>div{justify-self:end;display:flex;flex-direction:column;gap:10px;font-size:16px}.footer-bottom{border-top:1px solid #ffffff26;display:flex;gap:25px;align-items:center;font-size:16px;padding-top:24px}.footer-bottom>span:first-child{margin-right:auto}.page-hero{background:var(--navy);color:white;padding-top:75px;padding-bottom:70px}.page-hero h1{font-size:clamp(45px,5.8vw,80px);margin-bottom:25px}.page-hero>div>p:last-child{font-size:16px;max-width:500px;margin-bottom:0}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px}.filter-bar button{background:transparent;color:#111;border:1px solid var(--line);padding:11px 22px;font-size:16px;border-radius:100px}.filter-bar button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.journal-tail{font-size:16px;border-top:1px solid var(--line);margin:55px 0 0;padding-top:25px}.journal-tail .text-link{font-size:16px}.article{padding:65px 0 100px}.article-header{max-width:1000px}.article-header .eyebrow{margin-top:45px}.article-header h1{font-size:clamp(42px,5vw,69px);max-width:920px;margin-bottom:27px}.article-intro{max-width:680px;font-size:18px;line-height:1.7;margin-bottom:55px}.article-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:85px;align-items:start}.article-image{width:100%;max-height:600px;object-fit:cover}.article-body h2{font-size:29px;margin-bottom:18px}.article-body p{font-size:16px;line-height:1.9}.article-body section{margin-bottom:35px}.related{background:#e9edec}.related h2{margin-bottom:40px}.related .journal-grid{grid-template-columns:repeat(2,1fr)}.prose{max-width:780px}.prose h1{font-size:65px;margin-bottom:40px}.prose h2{font-size:27px;margin-top:38px}.prose p{font-size:16px;line-height:1.9}.prose p a{text-decoration:underline}.founder-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.founder-layout .portrait{position:sticky;top:140px}.founder-story p{font-size:16px;line-height:1.95;margin-bottom:24px}.founder-story .quote{font-family:Manrope,sans-serif;font-size:31px;line-height:1.4;letter-spacing:-.04em;border-left:3px solid var(--slate);padding-left:25px;margin:40px 0}.founder-story .about-signoff{font-size:16px}dialog{border:0;background:var(--navy);color:white;max-width:92vw;max-height:94vh;padding:26px;overflow:auto}dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}dialog>img{max-height:76vh;max-width:80vw;width:auto;object-fit:contain;margin:auto}dialog>p{font-size:16px;margin:18px 0 0}.dialog-close{position:absolute;right:7px;top:3px;font-size:28px;border:0;background:var(--navy);color:white;width:35px;height:35px}[hidden]{display:none!important}@media(min-width:1600px){.hero-copy{padding-left:160px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:19px}.hero-copy{padding-left:32px;padding-right:32px}.hero-grid,.hero-image{min-height:620px}.hero-foot{font-size:16px}.hero h1{font-size:7vw}.section{padding:80px 0}.service-list>a{grid-template-columns:30px 1fr 160px 30px;gap:20px}.service-tags{font-size:16px}.door-layout{gap:35px;grid-template-columns:.8fr 1.3fr}.door-tabs>button{font-size:17px}.door-photo{height:380px}.about-grid,.contact-grid{gap:55px}.experience{right:-20px;padding:20px}.gallery-rail{padding-left:32px;padding-right:32px}.gallery-card{height:390px}.journal-card h3{font-size:21px}.card-image{height:230px}.footer-bottom{gap:15px}.article-layout,.founder-layout{gap:50px}}
@media(max-width:780px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.topline .wrap{font-size:16px;min-height:29px}.topline a{font-size:16px}.topline a span{margin-left:6px}.header-inner{min-height:80px}.brand img{width:72px;height:70px}.menu-button{display:flex;gap:15px;align-items:center;border:0;background:transparent;padding:10px 0;font-size:16px}.menu-button span{font-size:20px}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:20px;box-shadow:0 15px 25px #0002}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a:not(.button){padding:12px 0;border-bottom:1px solid var(--line)}.header nav .button{margin-top:15px}.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:48px 25px 26px;min-height:530px}.hero h1{font-size:clamp(62px,11.7vw,86px);margin-bottom:22px}.hero-copy .eyebrow{font-size:16px;margin-bottom:25px}.hero-lead{font-size:16px;max-width:350px}.hero-foot{font-size:16px;margin-top:35px}.hero-image{min-height:440px}.hero-image>img{object-position:center 45%}.hero-actions{gap:22px}.hero-actions .button{font-size:16px;padding:14px 17px;gap:20px}.hero-secondary{font-size:16px}.image-stamp{font-size:16px;padding:17px;right:20px;top:20px}.image-label{font-size:16px;left:20px;right:20px}.intro-strip .wrap{flex-wrap:wrap;padding:25px 0;gap:19px}.intro-strip p{width:calc(100% - 50px);font-size:20px}.intro-strip span{font-size:16px}.intro-strip a{position:absolute;right:22px}.section{padding:65px 0}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:23px;font-size:16px}.section-heading .text-link{margin-top:24px}.eyebrow{font-size:16px;margin-bottom:19px}h2{font-size:38px}.service-list>a{grid-template-columns:23px 1fr 26px;gap:12px;padding:25px 0}.service-list h3{font-size:23px}.service-list p{font-size:16px;line-height:1.7;max-width:280px}.service-tags{display:none}.service-arrow{font-size:27px}.service-number{font-size:16px}.door-layout{display:flex;flex-direction:column;gap:25px}.door-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.door-tabs>button{border:1px solid #c7d0d0;padding:14px 10px;font-size:16px;gap:8px;line-height:1.4}.door-tabs>button span{font-size:16px}.door-tabs>button b{font-size:18px}.door-tabs>p{display:none}.door-photo{height:370px}.door-detail{gap:20px;padding-top:22px}.door-detail h3{font-size:23px}.door-detail p:last-child{font-size:16px}.gallery-tools{margin-top:25px}.gallery-tools p{width:auto;margin:0 auto 0 0;font-size:16px}.gallery-rail{padding-left:20px;padding-right:20px;gap:14px}.gallery-card{min-width:0;width:80vw;height:420px}.gallery-card strong{font-size:22px}.gallery-bottom{align-items:flex-start;flex-direction:column;gap:20px;margin-top:18px}.gallery-bottom .text-link{font-size:16px}.about-grid{grid-template-columns:1fr;gap:55px}.portrait{max-width:100%;padding-right:15px}.portrait>img{height:480px;object-position:center 30%}.experience{right:0;bottom:40px;padding:20px}.about-copy h2{font-size:39px}.about-copy .large-copy{font-size:21px}.about-copy>p:not(.eyebrow):not(.large-copy){font-size:16px;max-width:none}.journal-grid{grid-template-columns:1fr;gap:43px}.card-image{height:300px}.journal-card h3{font-size:25px}.journal-card p{font-size:16px}.card-meta{margin-top:18px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:42px}.contact-phone{font-size:29px}.contact-email{font-size:16px}.contact form{padding:25px 22px}.footer-top{grid-template-columns:100px 1fr;gap:20px;align-items:center}.footer-top .brand img{width:93px;height:90px}.footer-top>p{font-size:24px}.footer-top>div{grid-column:1/-1;justify-self:start;font-size:16px}.footer-bottom{display:flex;flex-wrap:wrap;gap:13px;font-size:16px}.footer-bottom>span:first-child{width:100%}.page-hero{padding:50px 0}.page-hero h1{font-size:51px}.page-hero>div>p:last-child{font-size:16px}.filter-bar{gap:7px}.filter-bar button{padding:10px 16px;font-size:16px}.article{padding:40px 0 65px}.article-header .eyebrow{margin-top:35px}.article-header h1{font-size:42px}.article-intro{font-size:16px;margin-bottom:35px}.article-layout{grid-template-columns:1fr;gap:35px}.article-image{max-height:390px}.article-body h2{font-size:26px}.article-body p{font-size:16px}.related .journal-grid{grid-template-columns:1fr}.prose h1{font-size:48px}.founder-layout{grid-template-columns:1fr;gap:45px}.founder-layout .portrait{position:static}.founder-story p{font-size:16px}.founder-story .quote{font-size:26px}.journal-tail .text-link{margin-top:10px}.round{width:36px;height:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.door-photo .type-panel{inset:0;display:flex;align-items:center;justify-content:center;text-align:center;background:repeating-linear-gradient(0deg,#182243 0,#182243 35px,#253153 36px,#253153 37px);color:white;font-family:Manrope,sans-serif;font-size:clamp(30px,3vw,48px);line-height:1.2;padding:50px;letter-spacing:-.04em}
/* Full-width photograph, with readable copy layered over the image. */
.hero-grid{position:relative;display:block;max-width:none;min-height:650px;isolation:isolate}.hero-image{position:absolute;inset:0;min-height:0;z-index:0}.hero-image>img{object-fit:cover;object-position:50% 49%}.hero-image:after{inset:0;background:linear-gradient(90deg,rgba(17,26,52,.96) 0%,rgba(17,26,52,.84) 35%,rgba(17,26,52,.22) 75%,rgba(17,26,52,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 30%)}.hero-copy{position:relative;z-index:2;min-height:650px;width:min(810px,67%);padding:65px 50px 30px max(50px,calc((100vw - 1280px)/2))}.hero h1{font-size:clamp(48px,5.4vw,84px);line-height:1.08}.hero-lead{max-width:395px}.hero-foot{max-width:520px}.image-label{left:auto;right:35px;bottom:28px;flex-direction:column;align-items:flex-end;gap:8px}.image-stamp{z-index:1}.brand img{width:122px;height:86px;object-fit:contain}.header .brand img{filter:brightness(0) saturate(100%)}.footer-top .brand img{width:135px;height:110px}.header-inner{min-height:101px}
@media(min-width:1600px){.hero-copy{padding-left:max(80px,calc((100vw - 1280px)/2));width:calc((100vw - 1280px)/2 + 720px)}}
@media(max-width:1100px){.hero-copy{padding-left:32px;padding-right:32px;width:70%}.hero-grid,.hero-copy{min-height:620px}.hero-image{min-height:0}.header nav{gap:17px}}
@media(max-width:780px){.hero-grid{min-height:600px}.hero-copy{width:100%;min-height:600px;padding:50px 22px 70px}.hero-image{min-height:0}.hero-image>img{object-position:58% 50%}.hero-image:after{background:linear-gradient(90deg,rgba(17,26,52,.94),rgba(17,26,52,.67)),linear-gradient(0deg,rgba(17,26,52,.4),transparent)}.hero h1{font-size:clamp(42px,10.5vw,70px);line-height:1.1}.hero-lead{font-size:16px;max-width:340px}.hero-copy .eyebrow{margin-bottom:29px}.hero-actions{gap:20px}.hero-foot{margin-top:36px}.image-stamp{display:none}.image-label{right:22px;left:22px;bottom:20px;flex-direction:row;justify-content:space-between;font-size:16px}.header-inner{min-height:80px}.brand img{width:105px;height:70px}.footer-top .brand img{width:100px;height:85px}}
/* Natural navigation, familiar Instagram mark, and clear gallery controls. */
.header nav{gap:23px}.instagram-header{display:inline-flex;align-items:center;justify-content:center;gap:8px}.header nav>a.instagram-header{padding:10px 0}.instagram-header span{font-size:16px}.service-list>a{grid-template-columns:1fr 240px}.service-tags{text-align:right}.door-tabs>button{gap:0}.door-tabs>button b{display:none}.door-detail .circle-arrow{border-radius:0;width:auto;height:auto;padding:12px 18px;font-size:16px;font-weight:500}.round{width:auto;min-height:39px;padding:8px 17px;border-radius:0;font-size:16px}.intro-strip a{font-size:16px;border-bottom:1px solid currentColor}.image-stamp{padding-bottom:20px}.gallery-bottom>span{text-transform:none;letter-spacing:0;font-size:16px}.instagram-section{background:#e9edec}.instagram-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.instagram-layout h2{margin-bottom:25px;max-width:400px}.instagram-layout>div>p:not(.eyebrow){font-size:16px}.instagram-layout .button{gap:12px;margin-top:15px;justify-content:flex-start}.instagram-handle{font-size:16px!important;margin-top:20px}.instagram-preview{background:white;padding:30px;min-height:300px}.instagram-preview h3{font-size:30px;margin-bottom:20px}.instagram-direct{display:inline-block;font-size:16px;border-bottom:1px solid currentColor;padding:5px 0;margin-top:12px}.instagram-preview .form-note{max-width:340px}.instagram-preview iframe{width:100%;height:510px;border:0;display:block;max-width:100%;background:white}.footer-bottom{flex-wrap:wrap}
@media(max-width:1100px){.header nav{gap:14px}.instagram-header span{display:none}.instagram-layout{gap:45px}.service-list>a{grid-template-columns:1fr 170px}}
@media(max-width:780px){.header nav>a.instagram-header{justify-content:flex-start;padding:15px 0}.instagram-header span{display:inline}.service-list>a{grid-template-columns:1fr}.intro-strip .wrap{position:relative;padding-bottom:48px}.intro-strip a{position:absolute;left:0;right:auto;bottom:16px;font-size:16px}.instagram-layout{grid-template-columns:1fr;gap:30px}.instagram-preview{padding:25px 18px}.instagram-preview iframe{height:475px}.gallery-tools{flex-wrap:wrap}.gallery-tools p{flex-basis:100%;margin-bottom:7px}}
/* Readable type and comfortably sized controls throughout. */
body{font-size:17px;line-height:1.7}.header nav{font-size:16px;gap:21px}.button,.button.small{font-size:16px;min-height:48px}.hero-lead{font-size:18px;max-width:450px}.hero-secondary{font-size:16px;min-height:44px;align-items:center}.hero-foot{font-size:14px;letter-spacing:.035em;flex-wrap:wrap;justify-content:flex-start;gap:14px 25px;line-height:1.7}.eyebrow,.hero-copy .eyebrow{font-size:14px;letter-spacing:.09em}.intro-strip span,.intro-strip a{font-size:18px}.intro-strip p{font-size:22px}.intro-strip .wrap{flex-wrap:wrap}.section-heading>p,.service-list p,.door-detail p:last-child,.about-copy>p:not(.eyebrow):not(.large-copy),.journal-card p,.article-body p,.prose p,.founder-story p{font-size:17px;line-height:1.8}.service-tags{font-size:14px;letter-spacing:.035em;line-height:1.7}.door-tabs>button{min-height:55px}.door-tabs>p,.door-tabs .text-link,.text-link,.journal-card .text-link{font-size:16px}.door-photo span{font-size:14px;letter-spacing:.05em}.card-meta,.card-meta span{font-size:14px;line-height:1.6}.gallery-tools p,.gallery-bottom>span,.gallery-bottom .text-link{font-size:16px}.round{font-size:16px;min-height:46px;padding:10px 18px}.gallery-card small{font-size:14px;letter-spacing:.07em}.about-signoff,.about-signoff strong{font-size:16px}.experience span{font-size:14px;letter-spacing:.03em}.experience{gap:16px}.experience strong{font-size:48px}.contact-grid>div>p:not(.eyebrow){font-size:17px}.contact .contact-note{font-size:16px!important}.contact-email{font-size:16px;overflow-wrap:anywhere}label{font-size:16px;line-height:1.6}input,select,textarea{min-height:48px;font-size:16px;padding:10px 0}textarea{min-height:110px}.form-note,.privacy-link,#email-status{font-size:14px;line-height:1.75}.privacy-link{display:inline-block;min-height:38px;padding:5px 0}.footer-top>div,.footer-bottom{font-size:14px;line-height:1.8}.footer-top>div a{min-height:35px}.footer-bottom a{min-height:40px;display:flex;align-items:center}.filter-bar button{font-size:16px;min-height:46px}.instagram-header span{font-size:16px}.instagram-header{min-width:44px;min-height:44px}.instagram-layout>div>p:not(.eyebrow){font-size:17px}.instagram-handle{font-size:16px!important}.instagram-direct{font-size:16px;min-height:44px;line-height:1.8}.instagram-preview .form-note{font-size:14px}.door-detail .circle-arrow{font-size:16px;min-height:48px}.journal-tail,.journal-tail .text-link{font-size:16px}.topline{font-size:14px;letter-spacing:.04em}.topline a{font-size:14px;min-height:40px;display:flex;align-items:center}.topline .wrap{min-height:40px}.portrait>img{height:560px}.experience{right:0;bottom:45px;max-width:100%}.hero-grid,.hero-copy{min-height:680px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #c4561c;outline-offset:4px}.hero a:focus-visible,.work a:focus-visible,.work button:focus-visible,.contact a:focus-visible,footer a:focus-visible{outline-color:#fff}.journal-card p,.card-meta span,.form-note{color:#25292c}
@media(max-width:1080px){.header-inner{min-height:85px}.menu-button{display:flex;gap:15px;align-items:center;border:0;background:transparent;padding:12px 0;font-size:16px;min-height:48px}.menu-button span{font-size:24px}.header nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:20px;box-shadow:0 15px 25px #0002}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a:not(.button){padding:14px 0;border-bottom:1px solid var(--line)}.header nav .button{margin-top:15px}.instagram-header{justify-content:flex-start}.instagram-header span{display:inline}.hero h1{font-size:clamp(43px,5.8vw,72px)}.experience span{font-size:14px}}
@media(max-width:780px){.topline .wrap>span{display:none}.topline .wrap{justify-content:flex-end}.topline a{font-size:14px}.header-inner{min-height:85px}.header nav{top:85px}.hero-copy{padding:48px 22px 40px;min-height:620px}.hero-grid{min-height:620px}.hero h1{font-size:clamp(42px,10.5vw,70px)}.hero-lead{font-size:17px}.hero-copy .eyebrow{font-size:14px}.hero-foot{font-size:14px;margin-top:30px}.hero-actions .button{font-size:16px;padding:14px 17px}.hero-secondary{font-size:16px}.intro-strip p{font-size:22px;width:100%}.intro-strip span,.intro-strip a{font-size:17px}.intro-strip .wrap{gap:18px;padding-bottom:65px}.intro-strip a{bottom:20px}.door-tabs>button{font-size:16px;min-height:58px}.door-detail{align-items:flex-start;flex-wrap:wrap}.door-detail h3{font-size:25px}.door-detail p:last-child{font-size:17px}.door-photo{height:360px}.portrait>img{height:500px}.experience{padding:17px;gap:16px;right:15px}.experience strong{font-size:43px}.experience span{font-size:13px;letter-spacing:.02em}.gallery-tools p{font-size:16px}.gallery-bottom .text-link{font-size:16px}.service-list p{font-size:17px;max-width:none}.contact-email{font-size:16px}.footer-top{grid-template-columns:110px 1fr}.footer-top>div{font-size:14px;max-width:100%;overflow-wrap:anywhere}.footer-bottom{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}.section-heading>p{font-size:17px}.instagram-layout>div>p:not(.eyebrow){font-size:17px}.journal-card h3{font-size:26px}.card-meta{font-size:14px}.article-body p{font-size:17px}.founder-story p{font-size:17px}}
/* Image-and-caption Instagram carousel. Images retain their full proportions. */
.instagram-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);gap:50px;align-items:center}.instagram-intro{min-width:0}.instagram-intro h2{font-size:clamp(37px,3.5vw,53px)}.instagram-carousel{min-width:0;background:white;border:1px solid #d1d8d5}.instagram-slide{display:grid;grid-template-columns:1.03fr 1fr;min-width:0;min-height:455px;align-items:stretch}.instagram-slide-image{display:flex;align-items:center;justify-content:center;min-width:0;background:#f0f0ed;padding:12px;min-height:455px}.instagram-slide-image img{width:100%;height:430px;object-fit:contain}.instagram-slide-copy{padding:28px 25px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.instagram-post-author{font-size:15px!important;font-weight:600;margin:0 0 12px;overflow-wrap:anywhere}.instagram-slide-copy time{font-size:14px;color:#333d3d;line-height:1.6}.instagram-caption{font-size:17px;line-height:1.8;margin:22px 0 25px;overflow-wrap:anywhere}.instagram-slide-copy .text-link{font-size:16px;line-height:1.5;margin-top:auto;min-height:44px;padding:10px 0}.instagram-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:18px;border-top:1px solid #d6dcd9}.carousel-control{font-size:16px;line-height:1.4;background:white;color:#111;border:1px solid #939f9a;min-height:46px;padding:10px 16px}.carousel-control:hover{background:#e9edec}.carousel-play{background:var(--navy);color:white;border-color:var(--navy);min-width:83px}.carousel-play:hover{background:var(--slate);color:white}.instagram-position{font-size:14px;color:#222b2b;margin-left:auto;white-space:nowrap}.instagram-slide a:focus-visible{outline-offset:-4px}.instagram-slides{overflow:hidden}.instagram-slide[hidden]{display:none!important}
@media(max-width:1100px){.instagram-layout{grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:28px}.instagram-slide-copy{padding:22px 18px}.instagram-slide{min-height:420px}.instagram-slide-image{min-height:420px;padding:8px}.instagram-slide-image img{height:395px}.instagram-controls{gap:8px;padding:14px}.carousel-control{padding:10px 12px}.instagram-caption{font-size:16px;line-height:1.7}}
@media(max-width:900px){.instagram-layout{grid-template-columns:1fr;gap:30px}.instagram-intro h2{max-width:none}.instagram-intro>p:not(.eyebrow){max-width:500px}.instagram-slide{grid-template-columns:1fr 1fr;min-height:440px}.instagram-slide-image{min-height:440px}.instagram-slide-image img{height:415px}.instagram-slide-copy{padding:30px}.instagram-caption{font-size:17px}}
@media(max-width:520px){.instagram-slide{grid-template-columns:1fr}.instagram-slide-image{min-height:0;height:360px;padding:14px}.instagram-slide-image img{height:332px;width:100%;object-fit:contain}.instagram-slide-copy{padding:25px 22px}.instagram-post-author{font-size:16px!important}.instagram-caption{margin:18px 0;font-size:17px}.instagram-slide-copy .text-link{margin-top:0}.instagram-controls{padding:14px 12px;gap:8px}.carousel-control{font-size:16px;padding:10px 12px}.instagram-position{font-size:14px}}
/* Homepage image sequence: Ferranti navy, cream and real client photography. */
.hero-carousel{position:relative;background:var(--navy);color:white;isolation:isolate}.hero-carousel .hero-slide,.hero-carousel .hero-copy{min-height:720px}.hero-carousel .hero-copy{width:calc(50% + 230px);padding:65px 50px 135px max(50px,calc((100vw - 1280px)/2));justify-content:center}.hero-carousel .hero-title{font-family:Manrope,Arial,sans-serif;font-size:clamp(50px,5.4vw,84px);line-height:1.09;font-weight:600;letter-spacing:-.045em;max-width:750px;margin:0 0 28px}.hero-carousel .hero-title em{font-style:normal;color:#fff}.hero-carousel .hero-lead{font-size:18px;line-height:1.8;max-width:470px;margin-bottom:30px}.hero-carousel .hero-image{min-height:0}.hero-carousel .hero-image img{width:100%;height:100%;object-fit:cover}.hero-carousel .hero-image:after{background:linear-gradient(90deg,rgba(17,26,52,.96),rgba(17,26,52,.85) 35%,rgba(17,26,52,.16) 82%),linear-gradient(0deg,rgba(17,26,52,.8),transparent 38%)}.hero-carousel .hero-actions{gap:25px}.hero-carousel .hero-secondary{font-size:16px;text-decoration:underline;text-underline-offset:6px}.hero-carousel-controls{position:absolute;z-index:5;bottom:32px;left:0;right:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero-select,.hero-pause{font:inherit;font-size:16px;line-height:1.4;border:1px solid #ffffffa0;color:white;background:#18224380;min-height:48px;padding:12px 22px;cursor:pointer}.hero-select[aria-pressed=true]{background:var(--accent);color:#111;border-color:var(--accent);font-weight:600}.hero-select:hover,.hero-pause:hover{background:white;color:#111}.hero-pause{margin-left:8px;min-width:88px}.hero-carousel button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.hero-slide:not([hidden]) .hero-image img{animation:hero-appear .6s ease-out}.hero-slide[hidden]{display:none!important}@keyframes hero-appear{from{opacity:.65}to{opacity:1}}
@media(max-width:1100px){.hero-carousel .hero-copy{padding-left:32px;padding-right:32px;width:calc(70% + 65px)}.hero-carousel .hero-title{font-size:clamp(50px,6.5vw,75px)}.hero-carousel .hero-lead{max-width:450px}}
@media(max-width:780px){.hero-carousel .hero-slide,.hero-carousel .hero-copy{min-height:690px}.hero-carousel .hero-copy{width:100%;padding:48px 22px 165px}.hero-carousel .hero-title{font-size:clamp(42px,10.5vw,68px);line-height:1.12;margin-bottom:25px}.hero-carousel .hero-lead{font-size:17px;max-width:420px;line-height:1.75}.hero-carousel .hero-copy .eyebrow{font-size:13px;letter-spacing:.04em;line-height:1.7;margin-bottom:26px}.hero-carousel .hero-actions{gap:18px}.hero-carousel .hero-image:after{background:linear-gradient(90deg,rgba(17,26,52,.95),rgba(17,26,52,.7)),linear-gradient(0deg,rgba(17,26,52,.8),transparent 40%)}.hero-carousel-controls{bottom:23px;gap:8px;display:grid;grid-template-columns:1fr 1fr}.hero-select,.hero-pause{padding:11px 12px;font-size:16px;min-height:47px}.hero-pause{margin:0;min-width:0}.hero-carousel .hero-secondary{font-size:16px}}
@media(prefers-reduced-motion:reduce){.hero-slide:not([hidden]) .hero-image img{animation:none}}
.instagram-carousel{position:relative}.instagram-slide-image{border:0;cursor:pointer;width:100%}.instagram-slide-image:focus-visible{outline:3px solid #c4561c;outline-offset:-4px}.instagram-motion-control{position:absolute;top:14px;left:14px;z-index:3;width:46px;height:46px;border:1px solid #ffffffc0;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;box-shadow:0 2px 8px #0003}.instagram-motion-control:hover{background:var(--slate)}.instagram-motion-control svg[hidden]{display:none}.instagram-slide-copy{min-height:455px}.instagram-slide-copy .text-link{margin-top:15px}.instagram-carousel[data-paused=true] .instagram-motion-control{background:#f8f8f5;color:#182243;border-color:#182243}
@media(max-width:1100px){.instagram-slide-copy{min-height:420px}}@media(max-width:520px){.instagram-slide-copy{min-height:270px}}
/* No visible slideshow control bars; use the image or keyboard to pause. */
.hero-carousel .hero-slide,.hero-carousel .hero-copy{min-height:650px}.hero-carousel .hero-copy{padding-bottom:70px}.hero-carousel:focus-visible{outline:3px solid var(--accent);outline-offset:-5px}
@media(max-width:780px){.hero-carousel .hero-slide,.hero-carousel .hero-copy{min-height:600px}.hero-carousel .hero-copy{padding:48px 22px 55px}}
/* Single photographic homepage: integrated white branding and fixed navigation. */
.home-page .topline{display:none}.home-page .header{position:fixed;top:0;left:0;right:0;width:100%;z-index:50;background:var(--navy);color:white;border-bottom:1px solid #ffffff26;transition:background-color .25s ease,box-shadow .25s ease}.home-page.has-overlay-header .header:not(.is-scrolled){background:transparent;box-shadow:none}.home-page .header.is-scrolled{background:var(--navy);box-shadow:0 3px 14px #0003}.home-page .header-inner{min-height:110px}.home-page .header .brand img{width:135px;height:96px;object-fit:contain;filter:brightness(0) invert(1)}.home-page .header nav>a:not(.button),.home-page .menu-button{color:white}.home-page .header nav>a:not(.button):hover{color:white;text-decoration:underline;text-underline-offset:7px}.home-page .header .button{background:var(--accent);border-color:var(--accent);color:#111}.home-page .header .button:hover{background:white;border-color:white;color:#111}.home-page .header a:focus-visible,.home-page .header button:focus-visible{outline-color:var(--accent)}.static-hero{position:relative;background:var(--navy);color:white;isolation:isolate;overflow:hidden}.static-hero .hero-grid{min-height:clamp(690px,100svh,850px);position:relative;display:block;max-width:none;background:var(--navy)}.static-hero .hero-copy{position:relative;z-index:2;min-height:clamp(690px,100svh,850px);width:calc(50% + 230px);padding:155px 50px 85px max(50px,calc((100vw - 1280px)/2));justify-content:center}.static-hero .hero-title{font-family:Manrope,Arial,sans-serif;font-size:clamp(54px,5.5vw,88px);line-height:1.09;font-weight:600;letter-spacing:-.045em;max-width:760px;margin:0 0 28px}.static-hero .hero-title em{font-style:normal;color:#fff}.static-hero .hero-lead{font-size:18px;line-height:1.8;max-width:460px;margin-bottom:32px}.static-hero .hero-actions{gap:26px}.static-hero .hero-secondary{font-size:16px;text-decoration:underline;text-underline-offset:6px}.static-hero .hero-image{position:absolute;inset:0;min-height:0;z-index:0;overflow:hidden}.static-hero .hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;transform-origin:65% 38%;animation:home-photo-zoom 10s ease-out both}.static-hero .hero-image:after{inset:0;background:linear-gradient(180deg,rgba(17,26,52,.82) 0,rgba(17,26,52,.25) 27%,transparent 55%),linear-gradient(90deg,rgba(17,26,52,.95),rgba(17,26,52,.78) 38%,rgba(17,26,52,.08) 83%),linear-gradient(0deg,rgba(17,26,52,.25),transparent 35%)}@keyframes home-photo-zoom{from{transform:scale(1)}to{transform:scale(1.07)}}
@media(max-width:1100px){.static-hero .hero-copy{width:calc(70% + 60px);padding-left:32px;padding-right:32px}.static-hero .hero-title{font-size:clamp(50px,6.7vw,76px)}}
@media(max-width:1080px){.home-page .header-inner{min-height:90px}.home-page .header .brand img{width:112px;height:80px}.home-page .header nav{top:90px;background:var(--navy);color:white;border-top:1px solid #ffffff26}.home-page .header nav>a:not(.button){border-bottom-color:#ffffff30}.home-page .header nav>a.instagram-header{color:white}.home-page .header .menu-button{color:white}}
@media(max-width:780px){.static-hero .hero-grid,.static-hero .hero-copy{min-height:clamp(620px,94svh,780px)}.static-hero .hero-copy{width:100%;padding:135px 22px 65px}.static-hero .hero-title{font-size:clamp(42px,10.5vw,70px);line-height:1.12;margin-bottom:25px}.static-hero .hero-lead{font-size:17px;line-height:1.75;max-width:410px}.static-hero .hero-copy .eyebrow{font-size:14px;line-height:1.7;letter-spacing:.06em;margin-bottom:25px}.static-hero .hero-actions{gap:20px}.static-hero .hero-image img{object-position:65% 38%;transform-origin:65% 38%}.static-hero .hero-image:after{background:linear-gradient(180deg,rgba(17,26,52,.85),rgba(17,26,52,.3) 26%,transparent 60%),linear-gradient(90deg,rgba(17,26,52,.92),rgba(17,26,52,.64))}.home-page .header .brand img{width:110px;height:78px}}
@media(prefers-reduced-motion:reduce){.static-hero .hero-image img{animation:none;transform:none}.home-page .header{transition:none}}
/* An understated, consistently aligned home for confirmed accreditation badges. */
.accreditation-strip{background:#f1f2ee;color:#111;border-top:1px solid #d7dcd7;padding:35px 0}.accreditation-inner{display:grid;grid-template-columns:240px 1fr;gap:45px;align-items:center;min-height:100px}.accreditation-inner h2{font-size:27px;font-weight:600;letter-spacing:-.03em;line-height:1.3;margin:0}.accreditation-logos{display:flex;justify-content:space-evenly;align-items:center;flex-wrap:wrap;gap:28px 36px;min-height:80px}.accreditation-badge{flex:0 1 150px;display:flex;justify-content:center;align-items:center;min-height:80px}.accreditation-badge a{display:flex;justify-content:center;align-items:center;min-height:80px;padding:8px}.accreditation-badge img{max-width:150px;max-height:80px;width:auto;height:auto;object-fit:contain}.accreditation-logos-empty{border:0}
@media(max-width:780px){.accreditation-strip{padding:30px 0}.accreditation-inner{grid-template-columns:1fr;gap:22px;text-align:center;min-height:125px}.accreditation-inner h2{font-size:26px}.accreditation-logos{gap:22px 28px;min-height:58px}.accreditation-badge{flex-basis:125px}.accreditation-badge img{max-width:125px;max-height:72px}}
/* Genuine customer feedback, with the attribution outside the quotation. */
.customer-reviews{background:#f8f8f5;color:#17191b;border-top:1px solid #e1e4df}.customer-review-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.65fr);gap:70px;align-items:start}.customer-review-heading h2{font-size:clamp(36px,3.8vw,52px);line-height:1.15;margin:0}.customer-review-heading .eyebrow{font-size:14px;letter-spacing:.09em}.customer-testimonial{margin:0;padding:34px 38px;background:white;border-top:3px solid var(--slate)}.customer-testimonial blockquote{margin:0 0 27px;font-size:17px;line-height:1.85;overflow-wrap:anywhere}.customer-testimonial blockquote p{margin:0 0 19px}.customer-testimonial blockquote p:last-child{margin-bottom:0}.customer-testimonial figcaption{border-top:1px solid #dce1dc;padding-top:22px;display:flex;flex-direction:column;gap:3px;line-height:1.65;font-size:16px}.customer-testimonial figcaption strong{font-family:Manrope,Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.02em}.testimonial-company{font-weight:600}.customer-testimonials{display:grid;gap:28px;min-width:0}
@media(max-width:1100px){.customer-review-layout{gap:40px;grid-template-columns:minmax(220px,.7fr) minmax(0,1.4fr)}.customer-testimonial{padding:30px}}
@media(max-width:780px){.customer-review-layout{grid-template-columns:1fr;gap:30px}.customer-review-heading h2{font-size:38px}.customer-testimonial{padding:27px 23px}.customer-testimonial blockquote{font-size:17px;line-height:1.8}.customer-testimonial figcaption{font-size:16px}.customer-testimonial figcaption strong{font-size:20px}}

/* Show complete installations while comparing door systems. */
.door-photo img{object-fit:contain;object-position:center;background:#d8dfdc}

/* Keep Mario’s identity and experience readable in the document flow. */
.portrait{margin:0;padding:0;min-width:0}
.portrait-photo{width:100%;aspect-ratio:1290 / 1630;overflow:hidden;background:var(--navy)}
.portrait-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:initial;object-position:initial}
.portrait-caption{display:block;padding:0;background:var(--navy);color:#fff;line-height:1.5;overflow-wrap:anywhere}
.portrait-identity{display:flex;flex-direction:column;gap:5px;padding:22px 25px}
.portrait-caption strong{font-family:Manrope,Arial,sans-serif;font-size:26px;line-height:1.25;letter-spacing:-.025em;font-weight:700}
.portrait-identity>span{font-size:18px;line-height:1.5}
.portrait .experience{position:static;inset:auto;width:100%;max-width:none;margin:0;padding:22px 25px;display:flex;align-items:center;gap:20px;background:#e9edec;color:#17191b;border-top:1px solid #d3dbd6}
.portrait .experience strong{font-size:46px;line-height:1.1;flex-shrink:0}
.portrait .experience span{font-size:16px;letter-spacing:0;line-height:1.55;text-transform:none}
@media(max-width:780px){.portrait-identity{padding:20px 22px}.portrait-caption strong{font-size:25px}.portrait .experience{padding:20px 22px;gap:18px}.portrait .experience strong{font-size:43px}}

/* Ferranti’s supplied secondary brand colour. */
.about,.intro-strip{color:#111}
.about .about-signoff{border-top-color:#657f87}

.enquiry-honeypot{display:none!important}.contact button:disabled{cursor:wait;opacity:.75}#email-status{overflow-wrap:anywhere}

/* Make the enquiry result clear before the submit button on every screen. */
#email-status.enquiry-status{padding:18px 20px;margin:18px 0;border:2px solid var(--slate);background:#edf2f4;color:#111;font-size:17px;font-weight:600;line-height:1.65;scroll-margin-block:140px 35px}
#email-status[data-state="success"]{background:#e5f2e8;border-color:#327347;color:#163c23}
#email-status[data-state="error"]{background:#fff0ee;border-color:#a13429;color:#6f1f18}
#email-status[data-state="sending"]{background:#edf2f4;border-color:#536c7c;color:#182243}

/* Keep the menu concise and calling available without opening it. */
.header-inner{gap:28px}
.header nav{margin-left:auto}
.header-controls{display:flex;align-items:center;gap:22px;flex-shrink:0}
.header-call{display:inline-flex;align-items:center;justify-content:center;min-height:48px;font-size:16px;font-weight:600;white-space:nowrap;text-decoration:underline;text-underline-offset:6px}
.header-call:hover{text-decoration-thickness:2px}
.home-page .header-call{color:#fff}
.testimonial-full{margin:0 0 24px}
.testimonial-full summary{width:fit-content;min-height:48px;padding:10px 0;font-size:16px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.testimonial-full summary:focus-visible{outline:3px solid var(--slate);outline-offset:4px}
.testimonial-full[open] summary{margin-bottom:15px}
.customer-testimonial .testimonial-excerpt{margin-bottom:12px}
.testimonial-full blockquote{padding-top:20px;border-top:1px solid var(--line);margin-bottom:0}
@media(max-width:1080px){.header-inner{gap:20px}.header nav{margin-left:0}.header-controls{margin-left:auto}.header-controls .menu-button{gap:10px}.header nav .button{justify-content:center}}
@media(max-width:400px){.header-inner{gap:12px}.header-controls{gap:14px}.header-controls .menu-button{gap:7px}.home-page .header .brand img,.header .brand img{width:94px;height:74px}}

/* Every installation photograph fills the same card height and shares its caption layout. */
.gallery-card img{width:100%;height:100%;object-fit:cover;object-position:center}

/* Company copyright on the left; linked design credit at the right. */
.footer-bottom .footer-design-credit{margin-left:auto;justify-content:flex-end;text-align:right;white-space:nowrap}
@media(max-width:780px){.footer-bottom .footer-design-credit{width:100%;margin-left:0;justify-content:flex-end}}
