:root{--paper:#f1eee7;--ink:#292d28;--muted:#6d7167;--accent:#9b856a;--line:#d7d4ca;--dark:#303a32;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.045em}em{font-weight:400;color:var(--accent)}h1{font-size:clamp(60px,7.5vw,120px)}h2{font-size:clamp(40px,4.8vw,74px)}h3{font-size:34px}p{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;line-height:1.8}.section{padding:112px 6.2%}.header{height:100px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.brand{width:220px;display:block}.brand img{height:auto;object-fit:contain}nav{display:flex;gap:30px;align-items:center;font-size:12px}nav a{position:relative;padding:12px 0}nav a:hover{color:var(--accent)}.nav-contact{margin-left:26px;border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.skip{position:fixed;left:12px;top:-100px;z-index:100;background:var(--ink);color:white;padding:10px}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:44% 56%;min-height:calc(100svh - 100px);max-height:1000px}.hero-copy{padding:65px 0 28px 14%;display:flex;flex-direction:column;justify-content:center;position:relative}.hero-copy .eyebrow{margin-bottom:45px;display:flex;gap:15px;align-items:center}.small-rule{display:inline-block;background:var(--accent);width:28px;height:1px}.hero h1{font-size:clamp(65px,7.8vw,126px);line-height:1.03;margin:0 -80px 30px 0;position:relative;z-index:2;letter-spacing:-.057em}.hero h1 em{color:var(--accent)}.hero-copy>p{font-size:14px;line-height:1.9;margin-bottom:30px}.text-link{font-size:12px;border-bottom:1px solid var(--accent);display:inline-flex;padding:8px 0 13px;gap:50px;align-items:center;align-self:flex-start}.text-link span{font-size:21px;line-height:1}.text-link:hover{color:var(--accent)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:55px;padding-right:40px;font-size:10px;color:var(--muted);line-height:1.6;letter-spacing:.06em}.hero-bottom a{font-size:25px;border:1px solid var(--line);border-radius:50%;width:45px;height:45px;text-align:center;line-height:43px}.hero-image{position:relative;min-height:670px;overflow:hidden}.hero-image img{object-position:53% center}.hero-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#101c1670);padding:60px 30px 24px;color:white;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.04em}.intro{display:grid;grid-template-columns:30% 70%;border-bottom:1px solid var(--line)}.intro>.eyebrow{padding-top:14px}.intro h2{font-size:clamp(40px,4.1vw,66px)}.intro-body{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:40px;max-width:800px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px;gap:40px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p,.small-note{font-size:12px;line-height:1.8;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1.1fr 1fr;column-gap:7%;row-gap:70px}.project-card:nth-child(even){padding-top:105px}.project-image{overflow:hidden;position:relative;aspect-ratio:1.32}.project-card:nth-child(even) .project-image{aspect-ratio:1.17}.project-image img{transition:transform .7s}.project-card:hover img{transform:scale(1.035)}.image-arrow{position:absolute;right:20px;bottom:20px;width:44px;height:44px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:22px}.project-caption{display:flex;justify-content:space-between;margin-top:22px}.project-caption .eyebrow{font-size:9px;color:var(--muted)}.project-caption h3{margin:9px 0;font-size:34px}.project-caption p{font-size:12px}.index{font-size:11px;padding-top:22px;color:var(--accent)}.portfolio-credit{margin-top:50px;font-size:11px;max-width:550px}.detail-band{position:relative;height:650px;color:var(--paper)}.detail-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101a1475,transparent)}.detail-band>div{position:absolute;z-index:1;left:6.2%;top:80px}.detail-band h2{margin-top:22px;font-size:clamp(48px,5vw,80px)}.detail-band em{color:#d5bda0}.detail-band .eyebrow{color:#f5f0e4}.expertise{display:grid;grid-template-columns:42% 58%;gap:0}.expertise .section-heading{display:block;padding-right:30px}.expertise .section-heading>p{margin-top:35px}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;gap:20px;align-items:center;cursor:pointer;list-style:none;padding:26px 0}summary::-webkit-details-marker{display:none}.service-number{font-size:10px;color:var(--accent);width:22px}summary h3{font-size:29px;letter-spacing:-.025em;flex:1}.plus{font-size:23px;font-weight:300}details[open] .plus{transform:rotate(45deg)}.service-body{padding:0 42px 30px;max-width:590px}.service-body p{font-size:13px}.service-body>span{display:block;font-size:9px;margin-top:22px;letter-spacing:.05em;color:var(--accent)}.approach{background:var(--dark);color:var(--paper)}.approach em{color:#bda68b}.approach p{color:#bac1b8}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps article{border-top:1px solid #687369;padding-top:25px}.steps span{font-size:10px;color:#bca68c}.steps h3{font-size:30px;margin:25px 0 20px}.steps p{font-size:12px}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-image{height:650px}.about-copy h2{font-size:clamp(36px,3.5vw,54px);margin:25px 0 35px}.about-copy>p{font-size:13px;margin-bottom:24px}.director-line{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.director-line:first-of-type{margin-top:35px}.director-line small{font-size:10px;color:var(--muted)}.cta{padding:90px 6.2% 105px;background:#e6e2d8}.cta-row{display:flex;justify-content:space-between;align-items:center;margin:25px 0 28px}.cta h2{font-size:clamp(50px,6vw,90px)}.circle-link{border:1px solid var(--accent);border-radius:50%;height:115px;width:115px;display:grid;place-items:center;font-size:50px;font-weight:100;transition:background .3s}.circle-link:hover{background:var(--accent);color:var(--paper)}.cta>p{font-size:13px;margin-bottom:25px}footer{padding:60px 6.2% 22px}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:start;padding-bottom:60px}.footer-top>p{font-family:var(--serif);font-size:24px;color:var(--ink);line-height:1.4}.footer-top>div{display:grid;gap:9px;font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:35px;justify-content:space-between;font-size:9px;color:var(--muted)}.project-head{padding-top:60px;padding-bottom:60px}.breadcrumb{font-size:11px;display:block;margin-bottom:45px}.project-head h1{margin:20px 0}.project-head p{font-family:var(--serif);font-size:24px}.case-hero{height:650px}.case-story{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.case-story h2{margin-top:22px}.case-story .lead{font-size:20px;line-height:1.7;font-family:var(--serif);color:var(--ink);margin-bottom:28px}.case-facts{display:flex;flex-wrap:wrap;gap:20px;border-block:1px solid var(--line);padding:22px 0;margin:30px 0;font-size:11px}.credit{font-size:11px;line-height:1.8;color:var(--muted)}.case-gallery{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:30px}.case-gallery:empty{display:none}.gallery-photo{border:0;padding:0;background:none;cursor:zoom-in;position:relative}.gallery-photo img{aspect-ratio:1.25;height:auto}.gallery-photo:first-child{grid-column:1/-1}.gallery-photo:first-child img{aspect-ratio:2}.gallery-photo span{position:absolute;bottom:15px;right:15px;font-size:10px;background:var(--paper);padding:6px 12px}.next-project{border-top:1px solid var(--line);padding-top:45px;padding-bottom:55px}.next-project a{display:flex;justify-content:space-between;font-family:var(--serif);font-size:50px;margin-top:15px}.enquiry{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:90px}.enquiry h1{font-size:clamp(48px,5.3vw,78px);margin:30px 0}.enquiry>div>p{max-width:420px;font-size:14px}.contact-details{display:grid;gap:15px;font-size:13px;margin-top:40px}form{padding-top:10px}form .eyebrow{margin-bottom:30px}label{display:block;font-size:11px;margin:22px 0 6px}input,textarea,select{width:100%;border:0;border-bottom:1px solid #b8b9ac;border-radius:0;background:transparent;outline-offset:4px;padding:9px 0;color:var(--ink)}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:1px solid var(--accent)}.submit{display:flex;width:100%;justify-content:space-between;background:var(--dark);color:var(--paper);border:0;padding:17px 20px;margin-top:25px;font-size:12px;cursor:pointer}.submit:hover{background:var(--ink)}.form-note{font-size:10px;margin-top:18px}.form-note a{text-decoration:underline}#form-status{font-size:12px;padding-top:18px}.legal{max-width:950px;margin:auto}.legal h1{font-size:65px;margin-bottom:40px}.legal h2{font-family:Arial,sans-serif;letter-spacing:0;font-size:19px;margin:40px 0 15px}.legal a{text-decoration:underline}dialog{padding:65px 20px 20px;border:0;background:#1c241e;width:94vw;max-width:1600px;color:white}dialog::backdrop{background:#18211be8}dialog img{height:75vh;object-fit:contain}dialog p{font-size:11px;text-align:center;color:#ddd;padding-top:15px}.close-lightbox{position:absolute;right:20px;top:15px;background:none;color:white;border:0;cursor:pointer;padding:10px}
@media(min-width:1800px){body{max-width:2000px;margin:auto}.hero{min-height:850px}.hero-copy{padding-top:80px}}
@media(max-width:1050px){nav{gap:20px}.nav-contact{margin-left:0}.brand{width:180px}.header{height:85px}.hero{min-height:650px}.hero-copy{padding-left:10%;padding-top:45px}.hero h1{font-size:80px}.hero-copy .eyebrow{font-size:8px}.hero-image{min-height:650px}.section{padding:80px 6%}.about-image{height:500px}.footer-top .brand{width:160px}.service-body{padding-left:0}.steps{gap:25px}.steps h3{font-size:26px}summary h3{font-size:24px}}
@media(max-width:760px){html{scroll-padding-top:80px}.header{height:80px;padding:0 6%}.brand{width:180px}.menu-toggle{display:flex;border:0;background:none;font-size:12px;gap:16px;align-items:center;padding:12px 0}.menu-toggle span{font-size:23px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:25px 6%;flex-direction:column;align-items:start;gap:12px}nav.open{display:flex}nav a{font-size:15px}.nav-contact{margin:10px 0}.hero{display:flex;flex-direction:column;max-height:none;min-height:0}.hero-copy{padding:48px 6% 28px}.hero-copy .eyebrow{margin-bottom:32px;font-size:9px}.hero h1{font-size:clamp(68px,13vw,95px);margin-right:0;margin-bottom:24px}.hero-copy>p{font-size:13px;margin-bottom:17px}.hero-bottom{display:none}.hero-image{height:460px;min-height:0}.hero-caption{padding:55px 6% 22px;font-size:10px}.section{padding:70px 6%}.intro{display:block}.intro>.eyebrow{margin-bottom:28px;padding-top:0}.intro h2{font-size:41px}.intro-body{display:block;margin-top:30px}.intro-body p+p{margin-top:20px}.section-heading{display:block;margin-bottom:38px}.section-heading h2{font-size:44px}.section-heading>p,.small-note{display:block;margin-top:24px}.project-grid{display:block}.project-card{display:block;margin-bottom:45px}.project-card:nth-child(even){padding-top:0}.project-card:nth-child(even) .project-image,.project-image{aspect-ratio:1.3}.project-caption h3{font-size:31px}.project-caption p{font-size:11px}.portfolio-credit{margin-top:0}.detail-band{height:500px}.detail-band>div{top:45px;left:6%}.detail-band h2{font-size:50px}.expertise{display:block}.expertise .section-heading{padding-right:0}.service-body{padding-left:42px}.steps{grid-template-columns:1fr 1fr;gap:35px 25px}.steps h3{font-size:27px;margin:20px 0 15px}.about{display:flex;flex-direction:column;gap:40px}.about-image{height:430px;width:100%}.about-copy h2{font-size:41px}.cta{padding:70px 6%}.cta h2{font-size:51px}.circle-link{height:65px;width:65px;font-size:30px;flex-shrink:0}.cta-row{gap:15px}.cta>.eyebrow{font-size:8px}footer{padding:45px 6% 22px}.footer-top{flex-wrap:wrap;padding-bottom:35px}.footer-top .brand{width:180px}.footer-top>p{font-size:23px}.footer-top>div{width:100%}.footer-bottom{flex-wrap:wrap;gap:15px 25px}.footer-bottom span{width:100%}.project-head{padding-top:40px;padding-bottom:45px}.project-head h1{font-size:61px}.project-head p{font-size:21px}.case-hero{height:420px}.case-story{display:block}.case-story>div+div{margin-top:35px}.case-story .lead{font-size:21px}.case-gallery{padding-top:0;gap:15px}.gallery-photo:first-child img{aspect-ratio:1.3}.case-gallery img{aspect-ratio:.9}.next-project a{font-size:37px}.enquiry{display:block;padding-top:50px}.enquiry h1{font-size:58px}.enquiry form{margin-top:60px}.legal h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* A quieter typographic scale and a more balanced brand lockup. */
.brand{width:228px}.hero h1{font-size:clamp(62px,6.1vw,94px);line-height:1.08;letter-spacing:-.045em;margin-right:0}.hero-copy>p{font-size:13px}.hero-copy .eyebrow{margin-bottom:34px}.hero h1,.hero h1 em{color:var(--ink)}.hero-bottom{letter-spacing:.025em}.detail-band h2{font-size:clamp(42px,4.2vw,64px);line-height:1.15}.section-heading h2,.intro h2{font-size:clamp(38px,3.6vw,56px);line-height:1.15}.cta h2{font-size:clamp(44px,4.8vw,68px);line-height:1.14}.circle-link{width:90px;height:90px;font-size:38px}.about-copy h2{font-size:clamp(34px,3.2vw,48px);line-height:1.18}.case-story h2{font-size:clamp(36px,3.4vw,52px)}.enquiry h1{font-size:clamp(46px,4.8vw,68px);line-height:1.14}.footer-top>p{font-size:21px}.credit,.portfolio-credit{font-size:11px}
@media(max-width:1050px){.brand{width:190px}.hero h1{font-size:66px}}
@media(max-width:760px){.brand{width:195px}.hero h1{font-size:clamp(58px,10vw,72px)}.hero-copy .eyebrow{margin-bottom:28px}.hero-copy{padding-top:42px;padding-bottom:30px}.section-heading h2,.intro h2{font-size:38px}.detail-band h2{font-size:46px}.about-copy h2{font-size:36px}.cta h2{font-size:42px}.circle-link{width:60px;height:60px;font-size:28px}.enquiry h1{font-size:48px}.footer-top .brand{width:195px}}

.other-works{padding-top:20px}.other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.other-grid .project-card{padding-top:0;margin:0}.other-grid .project-image,.other-card>.gallery-photo img{aspect-ratio:1.35;height:auto}.other-grid h3{font-size:29px}.other-grid .project-caption p{font-size:11px}.other-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.other-thumbs img{aspect-ratio:1.3;height:auto}.gallery-heading{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-bottom:10px;font-size:11px;color:var(--muted)}.case-gallery .gallery-photo:nth-child(2){grid-column:1/-1}.case-gallery .gallery-photo:nth-child(2) img{aspect-ratio:2}.case-hero .gallery-photo{width:100%;height:100%}.case-hero .gallery-photo img{height:100%;aspect-ratio:auto}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:45px;height:45px;background:#f1eee7e8;color:var(--ink);border:0;border-radius:50%;font-size:23px;cursor:pointer}.lightbox-prev{left:15px}.lightbox-next{right:15px}dialog img{padding:0 50px}.lightbox-prev[hidden],.lightbox-next[hidden]{display:none}
@media(max-width:760px){.other-grid{grid-template-columns:1fr;gap:45px}.other-grid h3{font-size:31px}.case-gallery .gallery-photo:nth-child(2) img{aspect-ratio:1.3}.lightbox-prev,.lightbox-next{height:33px;width:33px;font-size:18px}.lightbox-prev{left:5px}.lightbox-next{right:5px}dialog img{padding:0 24px}.gallery-heading{font-size:10px}.other-thumbs{gap:15px}}

/* Photography-led residential presentation. */
:root{--paper:#f7f6f2;--ink:#343a32;--muted:#767b72;--serif:'Figtree',Arial,Helvetica,sans-serif}body{font-family:'Figtree',Arial,Helvetica,sans-serif;font-size:14px;font-weight:300;line-height:1.9;background:var(--paper)}h1,h2,h3{font-family:'Figtree',Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:.12em;line-height:1.4;text-transform:uppercase}h2{font-size:24px}h3{font-size:18px}.section{padding:90px 7%}.header{height:112px;padding:0 5%;position:relative;display:flex;justify-content:space-between;border-bottom:0;background:#f7f6f2;z-index:20}.header .brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:235px}.menu-toggle{display:flex;align-items:center;gap:9px;border:0;background:none;font-family:inherit;font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:15px 0}.menu-toggle .menu-icon{font-size:13px;font-weight:300}.header-enquire{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.header-enquire span{margin-left:10px}nav{display:none;position:absolute;top:112px;left:0;right:0;gap:0;padding:35px 7% 45px;background:var(--paper);border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);align-items:start}nav.open{display:grid}nav a{padding:18px 0;font-size:12px;text-transform:uppercase;letter-spacing:.13em}nav a:hover{color:var(--accent)}.hero{display:block;position:relative;height:calc(100svh - 112px);min-height:650px;max-height:1050px;overflow:hidden;background:#343a32}.hero-image{position:absolute;inset:0;min-height:0;width:100%;height:100%;overflow:hidden}.hero-image img{object-position:center 52%}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#18241d05 25%,#1b281e50 65%,#152018a0)}.hero-copy{position:absolute;z-index:2;left:7%;right:7%;bottom:100px;display:flex;flex-direction:column;justify-content:start;align-items:center;padding:0;text-align:center;color:#fff}.hero-copy .eyebrow{margin:0 0 20px;font-size:10px;letter-spacing:.2em;display:block;color:#fff}.hero h1{font-family:'Figtree',Arial,sans-serif;font-size:42px;font-weight:300;letter-spacing:.17em;line-height:1.4;text-transform:uppercase;color:#fff;margin:0 0 14px}.hero-copy>p{color:#fff;font-size:15px;letter-spacing:.04em;line-height:1.8;margin:0 0 26px}.hero-copy .text-link{color:#fff;border-color:#ffffff85;font-size:10px;letter-spacing:.1em;text-transform:uppercase;align-self:center;gap:30px;padding:6px 0 10px}.hero-caption{z-index:3;padding:0;left:5%;right:5%;bottom:27px;background:none;font-size:10px;color:#fff;letter-spacing:.09em;display:flex;justify-content:space-between}.intro{display:block;text-align:center;max-width:1050px;margin:auto;border:0;padding-top:95px;padding-bottom:95px}.intro>.eyebrow{padding:0;color:var(--accent);margin-bottom:22px}.intro h2,.section-heading h2{font-size:24px;line-height:1.5;letter-spacing:.12em;font-weight:400}.intro h2 br{display:none}.intro-body{display:block;max-width:830px;margin:30px auto 0}.intro-body p{font-size:14px;line-height:1.95;margin:0 0 20px}.section-heading{display:block;text-align:center;margin-bottom:45px}.section-heading .eyebrow{font-size:9px;color:var(--accent);margin-bottom:15px}.section-heading>p,.small-note{display:block;margin-top:15px;font-size:12px;line-height:1.8}.small-note br{display:none}.work{padding-top:65px;background:#eeeee8}.project-grid{grid-template-columns:1fr 1fr;gap:45px 28px}.project-card:nth-child(even){padding-top:0}.project-image,.project-card:nth-child(even) .project-image{aspect-ratio:1.55}.project-caption{text-align:center;display:block;margin-top:18px}.project-caption .eyebrow{font-size:9px;letter-spacing:.15em}.project-caption h3{font-size:16px;font-weight:400;letter-spacing:.12em;margin:9px 0}.project-caption p{font-size:11px;letter-spacing:.01em}.index{display:none}.image-arrow{height:34px;width:34px;font-size:17px;right:15px;bottom:15px;background:#f7f6f2e8}.portfolio-credit{text-align:center;margin:40px auto 0;max-width:700px;font-size:10px}.other-works{padding-top:80px;padding-bottom:85px}.other-grid{gap:28px}.other-grid h3{font-size:14px;letter-spacing:.1em}.other-grid .project-image,.other-card>.gallery-photo img{aspect-ratio:1.45}.other-thumbs{gap:10px}.detail-band{height:630px}.detail-band>div{left:7%;right:7%;top:50%;transform:translateY(-50%);text-align:center}.detail-band:after{background:#14221c35}.detail-band h2{font-size:28px;letter-spacing:.13em;line-height:1.6;margin-top:18px}.detail-band h2 br{display:none}.expertise{display:block;max-width:1100px;margin:auto}.expertise .section-heading{padding:0}.expertise .section-heading>p{margin-top:18px}.expertise .section-heading>div h2{font-size:24px}.service-list{max-width:840px;margin:auto}summary h3{font-size:17px;font-weight:400;letter-spacing:.06em}.service-body{max-width:740px;padding-left:42px}.service-body p{font-size:13px;line-height:1.9}.service-body>span{font-size:10px}.approach .section-heading h2{font-size:24px}.approach .section-heading p{max-width:600px;margin:20px auto 0}.steps h3{font-size:15px;letter-spacing:.05em;line-height:1.6}.steps p{font-size:12px;line-height:1.9}.about{gap:7%;max-width:1400px;margin:auto}.about-image{height:520px}.about-copy h2{font-size:21px;letter-spacing:.1em;line-height:1.65;margin:24px 0}.about-copy>p{font-size:13px;line-height:1.95}.cta{padding:75px 7%;text-align:center;background:#eceee7}.cta-row{display:block;margin:20px 0}.cta h2{font-size:25px;letter-spacing:.12em;line-height:1.6}.cta h2 br{display:none}.circle-link{display:none}.cta>p{max-width:700px;margin:0 auto 22px;font-size:13px}.cta .text-link{font-size:10px;letter-spacing:.12em;text-transform:uppercase;gap:28px}.footer-top>p{font-family:inherit;font-size:12px;letter-spacing:.04em;line-height:1.9}.project-head{text-align:center;padding-top:48px;padding-bottom:50px}.project-head .breadcrumb{font-size:10px;margin-bottom:32px}.project-head h1{font-size:32px;font-weight:300;letter-spacing:.15em;line-height:1.5;margin:15px 0}.project-head>p{font-family:inherit;font-size:13px;letter-spacing:.04em}.case-hero{height:620px}.case-story{grid-template-columns:1fr 1.8fr;gap:55px}.case-story h2{font-size:21px;letter-spacing:.1em}.case-story .lead{font-family:inherit;font-size:15px;line-height:1.95}.case-story>div>p{font-size:13px}.gallery-photo span{font-family:inherit;font-size:9px;letter-spacing:.04em}.case-gallery{gap:25px}.next-project a{font-family:inherit;font-size:24px;font-weight:300;letter-spacing:.09em;text-transform:uppercase}.enquiry h1{font-size:30px;font-weight:300;letter-spacing:.12em;line-height:1.6}.enquiry>div>p{font-size:13px}.legal h1{font-size:28px;letter-spacing:.1em}.header .brand img{height:auto}
@media(prefers-reduced-motion:no-preference){.hero-image img{animation:hero-settle 16s ease-out both}@keyframes hero-settle{from{transform:scale(1.035)}to{transform:scale(1)}}}
@media(max-width:760px){.header{height:86px;padding:0 5%}.header .brand{width:165px}.menu-toggle{font-size:9px;letter-spacing:.06em;gap:5px}.menu-toggle .menu-icon{font-size:11px}.header-enquire{font-size:9px;letter-spacing:.06em}.header-enquire span{margin-left:5px}nav{top:86px;padding:24px 7%;grid-template-columns:1fr}nav.open{display:grid}nav a{font-size:12px;padding:14px 0}.hero{height:calc(100svh - 86px);min-height:610px;max-height:920px}.hero-image{height:100%;min-height:0}.hero-image img{object-position:49% center}.hero-copy{bottom:105px;left:7%;right:7%}.hero-copy .eyebrow{font-size:8px;line-height:1.9;letter-spacing:.17em;margin-bottom:18px}.hero h1{font-size:27px;letter-spacing:.15em;line-height:1.65;margin-bottom:13px}.hero-copy>p{font-size:12px;line-height:1.8;margin-bottom:21px;max-width:270px}.hero-caption{bottom:24px;left:7%;right:7%;font-size:9px}.hero-copy .text-link{font-size:9px}.section{padding:65px 7%}.intro{padding-top:70px;padding-bottom:60px}.intro h2,.section-heading h2{font-size:19px;line-height:1.65;letter-spacing:.1em}.intro-body{margin-top:25px}.intro-body p{font-size:13px;line-height:1.95}.project-grid{display:grid;grid-template-columns:1fr;gap:35px}.project-card{margin:0}.project-caption h3{font-size:15px}.project-image,.project-card:nth-child(even) .project-image{aspect-ratio:1.35}.small-note{margin-top:15px}.other-grid{grid-template-columns:1fr;gap:40px}.other-grid h3{font-size:15px}.other-thumbs{max-width:400px;margin:17px auto 0}.detail-band{height:460px}.detail-band>div{top:50%;left:7%;right:7%}.detail-band h2{font-size:23px;line-height:1.7;letter-spacing:.12em}.expertise .section-heading>div h2,.approach .section-heading h2{font-size:19px}.service-list{margin-top:25px}summary{gap:14px;padding:24px 0}summary h3{font-size:14px;letter-spacing:.025em}.service-body{padding-left:36px;padding-right:0}.steps{gap:30px 24px}.steps h3{font-size:13px;line-height:1.7}.steps p{font-size:11px;line-height:1.9}.about{gap:35px}.about-image{height:400px}.about-copy h2{font-size:18px;line-height:1.8}.about-copy>p{font-size:12px}.cta{padding:62px 7%}.cta h2{font-size:20px;line-height:1.8}.cta>p{font-size:12px}.footer-top .brand{width:200px}.footer-top>p{font-size:12px}.project-head h1{font-size:25px;letter-spacing:.1em}.project-head>p{font-size:12px}.case-hero{height:440px}.case-story h2{font-size:18px}.case-story .lead{font-size:14px;line-height:1.95}.case-gallery{gap:14px}.next-project a{font-size:19px;line-height:1.5}.enquiry h1{font-size:24px;line-height:1.75}.legal h1{font-size:23px}}
@media(max-width:760px){.menu-toggle,.header-enquire{font-size:11px;letter-spacing:.07em}.hero-copy .eyebrow{font-size:9px}.hero-copy .text-link{font-size:11px}.hero-caption{font-size:10px}.header .brand{width:165px}nav a{font-size:13px}.gallery-photo span{font-size:10px}}
.header{position:sticky;top:0}

/* Photography-led horizontal project collections. */
.work.section,.other-works.section{padding-left:4%;padding-right:4%}
.project-rail{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0;padding:0 0 12px;scrollbar-width:thin;scrollbar-color:#a6aaa0 transparent;overscroll-behavior-x:contain;cursor:grab;-webkit-overflow-scrolling:touch}
.project-rail:focus-visible{outline:1px solid var(--ink);outline-offset:7px}
.project-rail.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.project-rail .project-tile{position:relative;flex:0 0 clamp(260px,26vw,480px);height:clamp(470px,49vw,760px);margin:0;padding:0;overflow:hidden;scroll-snap-align:start;background:#454b41;isolation:isolate}
.project-rail .project-image,.project-rail .project-card:nth-child(even) .project-image{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.project-rail .project-image img,.project-tile-button>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease;pointer-events:none}
.project-rail .project-tile:after,.project-tile-button:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#10181105 35%,#10181130 65%,#101811b5)}
.project-rail .other-card:after{display:none}
.project-rail .tile-caption,.project-tile-button .tile-caption{position:absolute;z-index:2;left:20px;right:20px;bottom:35px;margin:0;padding:0;background:none;color:#fff;text-align:center;display:block;font-family:inherit}
.project-rail .tile-caption h3,.project-rail .tile-title{display:block;margin:0;font-size:clamp(18px,1.55vw,27px);font-weight:300;line-height:1.45;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.project-rail .tile-caption>span:not(.tile-title),.project-rail .tile-place{display:block;margin-top:10px;font-size:9px;font-weight:300;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;color:#fff}
.project-tile-button{display:block;position:relative;width:100%;height:100%;border:0;padding:0;margin:0;border-radius:0;background:none;cursor:pointer;text-align:inherit;color:inherit;font-family:inherit}
.project-tile-button:focus-visible{outline:2px solid white;outline-offset:-5px}
.project-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.project-controls button{width:44px;height:44px;padding:0;border:1px solid #c5c8bf;border-radius:50%;background:transparent;font-family:inherit;font-size:21px;line-height:1;cursor:pointer;color:var(--ink)}
.project-controls button:hover:not(:disabled){background:var(--ink);color:var(--paper);border-color:var(--ink)}
.project-controls button:disabled{opacity:.25;cursor:default}
.project-controls button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(hover:hover){.project-rail .project-tile:hover img{transform:scale(1.035)}}
@media(max-width:760px){.work.section,.other-works.section{padding-left:7%;padding-right:7%}.project-rail{gap:14px;margin-right:-8.14%;padding-right:7%;scroll-padding-right:7%}.project-rail .project-tile{flex-basis:82%;height:480px;max-height:68svh;min-height:370px}.project-rail .tile-caption,.project-tile-button .tile-caption{left:16px;right:16px;bottom:29px}.project-rail .tile-caption h3,.project-rail .tile-title{font-size:20px}.project-controls{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.project-rail img{transition:none}}

.hero-image img{object-position:65% center}
@media(max-width:760px){.hero-image img{object-position:70% center}}

/* A small flame anchored to the photographed candle wick. */
.candle-motion{position:absolute;display:block;pointer-events:none;visibility:hidden;width:0;height:0;z-index:1;--candle-scale:1}
.candle-motion.ready{visibility:visible}
.candle-flame{position:absolute;left:-2.5px;bottom:0;width:5px;height:11px;border-radius:55% 45% 45% 45%;background:radial-gradient(ellipse at 50% 80%,#fffde3 0 30%,#ffe6a4 48%,#e7ab5f 78%,transparent 100%);transform-origin:50% 100%;filter:drop-shadow(0 0 2px #f3cc8155);animation:candle-flicker 2.7s ease-in-out infinite;opacity:.86}
.candle-glow{position:absolute;left:-13px;top:-21px;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle,#ffdca324,transparent 70%);transform:scale(var(--candle-scale));transform-origin:50% 80%;animation:candle-glow 3.8s ease-in-out infinite;opacity:.65}
@keyframes candle-flicker{0%,100%{transform:scale(var(--candle-scale)) rotate(-2deg);opacity:.82}19%{transform:scale(var(--candle-scale)) scale(.94,1.04) rotate(3deg);opacity:.91}37%{transform:scale(var(--candle-scale)) scale(1.03,.95) rotate(-4deg);opacity:.79}63%{transform:scale(var(--candle-scale)) scale(.98,1.07) rotate(2deg);opacity:.9}82%{transform:scale(var(--candle-scale)) rotate(-1deg);opacity:.84}}
@keyframes candle-glow{0%,100%{opacity:.5}41%{opacity:.7}76%{opacity:.55}}
.hero-image.motion-paused .candle-flame,.hero-image.motion-paused .candle-glow{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.candle-flame,.candle-glow{animation:none}.candle-flame{transform:scale(var(--candle-scale))}}

.hero-image{transform:scale(1.12);transform-origin:65% 54%}
@media(max-width:760px){.hero-image{transform:scale(1.06);transform-origin:70% 54%}}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}
.hero-video[hidden]{display:none}
.hero-image.has-video .candle-motion{display:none}
.hero-motion-toggle{position:absolute;z-index:4;right:5%;top:24px;display:flex;align-items:center;gap:12px;color:#fff;border:1px solid #ffffff65;border-radius:0;padding:9px 12px;background:#19201620;font-family:inherit;font-size:9px;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(4px)}
.hero-motion-toggle[hidden]{display:none}
.hero-motion-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:760px){.hero-video{object-position:70% center}.hero-motion-toggle{top:18px;right:7%;padding:8px 10px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.hero-video,.hero-motion-toggle{display:none!important}.hero-image.has-video .candle-motion{display:block}}

/* Project cards use consistent full-height photography and quiet captions. */
.project-rail .project-elwill-way .project-image img{object-position:50% center}
.project-rail .project-manor-way .project-image img{object-position:50% center}
.project-rail .other-card>.project-tile-button>img{height:100%;aspect-ratio:auto;object-fit:cover;object-position:65% center}
.project-rail .project-tile-button .tile-caption{top:auto;left:20px;right:20px;bottom:35px;background:none;padding:0;color:#fff}
.project-rail .project-tile-button .tile-title,.project-rail .project-tile-button .tile-place{position:static;background:none;padding:0;color:#fff}
@media(max-width:760px){.project-rail .project-tile-button .tile-caption{left:16px;right:16px;bottom:29px}}

.project-rail .project-westhall-road .project-image img{object-position:57% center}
.project-rail .project-winnington-road .project-image img{object-position:50% center}

/* Quiet motion: a small lift on arrival, a soft menu, and layered gallery fades. */
.reveal-item{transition:opacity .65s ease-out,transform .7s cubic-bezier(.2,.65,.3,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-pending{opacity:0;transform:translateY(12px)}
.reveal-item:focus-within{opacity:1;transform:none;transition-delay:0ms}
.header #navigation{display:grid;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .24s ease,transform .32s ease,visibility 0s .32s}
.header #navigation.open{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition-delay:0s}
.header #navigation a{opacity:0;transform:translateY(5px);transition:opacity .3s ease,transform .35s ease;transition-delay:0s}
.header #navigation.open a{opacity:1;transform:none;transition-delay:var(--menu-delay,0ms)}
.lightbox-stage{display:grid;height:min(75vh,calc(100svh - 155px));width:100%;pointer-events:none;isolation:isolate}
#lightbox .lightbox-stage img{grid-area:1/1;height:100%;min-height:0;object-fit:contain}
#lightbox .lightbox-outgoing{z-index:1}
#lightbox .lightbox-outgoing[hidden]{display:none}
#lightbox .close-lightbox,#lightbox .lightbox-prev,#lightbox .lightbox-next{z-index:2}
@media(prefers-reduced-motion:no-preference){#lightbox[open]{animation:gallery-open .2s ease-out}#lightbox[open]::backdrop{animation:gallery-open .2s ease-out}@keyframes gallery-open{from{opacity:0}to{opacity:1}}}
@media(prefers-reduced-motion:reduce){.reveal-item{opacity:1;transform:none;transition:none!important}.header #navigation,.header #navigation a{transform:none;transition:none!important}}

/* Centre the selected project and leave a quiet glimpse of its neighbours. */
.project-rail{--project-card-width:clamp(260px,26vw,480px);--rail-gap:20px;gap:var(--rail-gap);width:calc(100% + 8vw);margin-inline:-4vw;padding-inline:0;scroll-padding-inline:0}
.project-rail::before,.project-rail::after{content:'';flex:0 0 max(0px,calc((100vw - var(--project-card-width))/2 - var(--rail-gap)));pointer-events:none}
.project-rail .project-tile{flex-basis:var(--project-card-width);scroll-snap-align:center}
.project-rail .project-image img,.project-rail .project-tile-button>img{transition:transform .6s ease,filter .35s ease}
.project-rail.has-highlight .project-tile:not(.is-highlighted) img{filter:brightness(.8)}
.project-rail.has-highlight .project-tile.is-highlighted img{filter:brightness(1)}
@media(max-width:760px){.project-rail{--project-card-width:76vw;--rail-gap:14px;width:calc(100% + 14vw);margin-inline:-7vw;padding-inline:0;scroll-padding-inline:0}}
@media(prefers-reduced-motion:reduce){.project-rail.has-highlight img{transition:none!important}}
