 :root{--paper:#f8f7f3;--ink:#171715;--muted:#77766f;--line:#d9d7cf;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none} .intro{position:fixed;inset:0;z-index:20;background:var(--paper);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;animation:intro-away .8s ease 2.15s forwards;pointer-events:none}.intro-name{font:italic clamp(24px,4vw,38px) var(--serif);letter-spacing:.02em;opacity:0;transform:translateY(12px);animation:name-in .9s cubic-bezier(.2,.7,.2,1) .25s forwards}.intro-line{height:1px;width:0;background:var(--ink);animation:line-in .8s ease .8s forwards}@keyframes name-in{to{opacity:1;transform:translateY(0)}}@keyframes line-in{to{width:85px}}@keyframes intro-away{to{opacity:0;visibility:hidden}}.site-header{height:88px;padding:0 4.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,23,21,.12);position:relative;z-index:10;background:var(--paper)}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-name{font:italic 23px var(--serif);letter-spacing:-.04em}.main-nav{display:flex;gap:clamp(18px,2.6vw,42px);align-items:center}.main-nav a,.header-cta,.hero-meta,.eyebrow,.hero-footer,.section-index,.visual-caption,.visual-center,.button,.text-link,.work-tag,.work-info span,.process-step>span,.contact-side>span,.site-footer>span,.site-footer>a:last-child{font-size:10px;letter-spacing:.18em}.main-nav a{transition:opacity .2s}.main-nav a:hover{opacity:.5}.header-cta{border:1px solid var(--ink);border-radius:99px;padding:14px 19px;white-space:nowrap}.header-cta span,.button span{font-size:15px;margin-left:8px;letter-spacing:0}.menu-toggle{display:none;background:none;border:0}.hero{padding:0 4.2%}.hero-meta{height:56px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:9px}.hero-copy{padding:50px 0 38px}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:9px}.eyebrow-rule{height:1px;width:28px;background:currentColor}.hero h1{font:500 clamp(64px,10vw,146px)/.91 var(--serif);letter-spacing:-.075em;margin:28px 0 34px;max-width:1100px}.hero h1 em,.section-heading h2 em,.intro-content h2 em,.process-layout h2 em,.contact h2 em{font-weight:500}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.hero-description{max-width:430px;color:#62615b;line-height:1.8;font-size:14px;margin:0}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:17px 21px;border-radius:99px;letter-spacing:.14em;min-height:52px}.button-dark{background:var(--ink);color:var(--paper);transition:background .25s,transform .25s}.button-dark:hover{background:#44433e;transform:translateY(-2px)}.text-link{padding:15px 0;border-bottom:1px solid var(--line)}.text-link span{margin-left:12px}.hero-visual{margin-top:25px}.visual-placeholder{height:clamp(260px,45vw,590px);position:relative;overflow:hidden;background:linear-gradient(120deg,#d7d4cc,#aaa99f 48%,#77796f);color:#fff}.visual-placeholder:before,.visual-placeholder:after{content:"";position:absolute;inset:0;pointer-events:none}.visual-placeholder:before{background:linear-gradient(115deg,transparent 0 34%,rgba(255,255,255,.23) 34.2%,transparent 34.6%),linear-gradient(25deg,rgba(18,20,17,.25),transparent 65%)}.visual-placeholder:after{background:linear-gradient(0deg,rgba(0,0,0,.4),transparent 35%)}.placeholder-grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 11.9%,rgba(255,255,255,.15) 12% 12.1%),repeating-linear-gradient(0deg,transparent 0 24.8%,rgba(255,255,255,.12) 25% 25.1%);opacity:.55}.visual-caption{position:absolute;z-index:1;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;font-size:9px}.visual-center{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:rgba(255,255,255,.9)}.visual-center small{font-size:10px;letter-spacing:.04em;color:rgba(255,255,255,.7)}.play-icon{border:1px solid rgba(255,255,255,.7);border-radius:50%;width:50px;height:50px;display:grid;place-items:center;font-size:21px}.hero-footer{display:flex;justify-content:space-between;padding:24px 0 34px;color:var(--muted);font-size:9px}.section-pad{padding:120px 8.3%;border-top:1px solid var(--line)}.section-index{color:var(--muted);font-size:9px;white-space:nowrap}.intro-section{display:grid;grid-template-columns:1fr 2.2fr;gap:40px}.intro-content .eyebrow{margin:0 0 25px}.intro-content h2,.section-heading h2,.process-layout h2,.contact h2{font:500 clamp(42px,6vw,82px)/1.05 var(--serif);letter-spacing:-.055em;margin:0}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:36px;max-width:750px}.intro-columns p,.work-heading>p,.process-step p,.contact-note{font-size:13px;line-height:1.9;color:#696861;margin:0}.services{background:#f0efe9}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:45px}.section-heading .section-index{margin-bottom:25px}.service-list{border-top:1px solid #ceccc3}.service-item{display:grid;grid-template-columns:70px 1fr 35px;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid #ceccc3;transition:padding .25s}.service-item:hover{padding-left:10px;padding-right:10px}.service-no{font-size:10px;color:var(--muted)}.service-item h3{font:500 25px var(--serif);margin:0 0 7px}.service-item p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.service-arrow{font-size:22px;text-align:right}.work-heading{align-items:flex-end}.work-heading>p{max-width:270px}.work-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:42px 24px}.work-large{grid-row:span 2}.work-image{height:clamp(230px,29vw,400px);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#d0cec5;color:#fff}.work-large .work-image{height:100%;min-height:500px}.image-one{background:linear-gradient(135deg,#777b72,#c3bfb2 45%,#575c55)}.image-two{background:linear-gradient(145deg,#b8b2a6,#77776e 60%,#d4d0c6)}.image-three{background:linear-gradient(145deg,#b3c0c0,#667775 52%,#d5d0c3)}.work-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.24),transparent 60%);transition:background .3s}.work-card:hover .work-image:after{background:rgba(0,0,0,.1)}.work-tag,.work-open{position:absolute;z-index:1;top:20px}.work-tag{left:20px;font-size:9px}.work-open{right:20px;width:34px;height:34px;border:1px solid rgba(255,255,255,.7);border-radius:50%;display:grid;place-items:center}.work-placeholder-title{position:relative;z-index:1;text-align:center;font:500 clamp(48px,7vw,95px)/.9 var(--serif);letter-spacing:-.06em}.work-placeholder-title em{font-weight:500}.small-title{font-size:clamp(27px,3vw,45px);letter-spacing:.02em}.work-info{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding-top:14px}.work-info h3{font:500 20px var(--serif);margin:0}.work-info span{font-size:8px;color:var(--muted);letter-spacing:.12em}.process{background:#eeede7}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:45px}.process-layout h2{font-size:clamp(46px,6vw,78px)}.process-steps{border-top:1px solid #ceccc3}.process-step{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:21px 0;border-bottom:1px solid #ceccc3}.process-step>span{color:var(--muted);padding-top:5px}.process-step h3{font:500 21px var(--serif);margin:0 0 6px}.contact{display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:35px}.contact-content .eyebrow{margin:0 0 22px}.contact h2{font-size:clamp(43px,6vw,79px)}.contact-note{margin:24px 0}.contact-side{align-self:end;display:flex;flex-direction:column;gap:12px;padding-bottom:4px}.contact-side>span{color:var(--muted);font-size:9px}.contact-side>a{font:500 15px var(--serif);overflow-wrap:anywhere}.contact-side small{font-size:10px;color:var(--muted);line-height:1.6}.site-footer{border-top:1px solid var(--line);padding:24px 4.2%;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer .brand-name{font-size:19px}.site-footer>span,.site-footer>a:last-child{font-size:8px;color:var(--muted)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.intro{display:none}.reveal{opacity:1;transform:none}}@media(max-width:850px){.site-header{height:76px}.main-nav{gap:14px}.main-nav a{font-size:8px}.header-cta{font-size:8px;padding:12px}.brand-name{font-size:20px}.section-pad{padding:85px 6%}.contact{grid-template-columns:1fr 2fr}.contact-side{grid-column:2}.intro-section{grid-template-columns:1fr 2fr}.work-large .work-image{min-height:420px}}@media(max-width:650px){.site-header{padding:0 5%;height:72px}.brand-name{font-size:19px}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:12px}.menu-toggle span{display:block;width:23px;height:1px;background:var(--ink)}.main-nav{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:22px 5% 28px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px}.main-nav.open{display:flex}.main-nav a{font-size:10px}.hero{padding:0 5%}.hero-meta{height:47px;font-size:7px}.hero-copy{padding:40px 0 25px}.hero h1{font-size:clamp(58px,14vw,90px);margin:25px 0 25px}.hero-bottom{align-items:flex-start;flex-direction:column}.hero-description{font-size:13px}.hero-actions{gap:18px}.button{font-size:9px;padding:15px 17px;min-height:48px}.text-link{font-size:9px}.visual-placeholder{height:330px}.visual-caption{left:14px;right:14px;font-size:7px}.hero-footer{font-size:7px;padding:19px 0 25px}.section-pad{padding:68px 5%}.intro-section{grid-template-columns:1fr;gap:28px}.intro-content h2,.section-heading h2{font-size:clamp(40px,11vw,60px)}.intro-columns{grid-template-columns:1fr;gap:16px;margin-top:25px}.section-heading{flex-direction:column;margin-bottom:30px}.service-item{grid-template-columns:35px 1fr 20px;gap:12px;padding:22px 0}.service-item h3{font-size:21px}.service-item p{font-size:11px}.work-heading>p{max-width:100%}.work-grid{grid-template-columns:1fr;gap:28px}.work-large{grid-row:auto}.work-large .work-image{height:340px;min-height:0}.work-image{height:300px}.work-info{flex-direction:column;gap:6px}.process-layout{grid-template-columns:1fr;gap:32px;margin-top:30px}.process-layout h2{font-size:clamp(45px,12vw,66px)}.contact{grid-template-columns:1fr;gap:28px}.contact-content{grid-column:1}.contact h2{font-size:clamp(42px,11vw,63px)}.contact-side{grid-column:1;margin-top:15px}.site-footer{padding:22px 5%;flex-wrap:wrap}.site-footer .brand{width:100%}.site-footer>span{margin-right:auto}}

.gallery-hero{padding:64px 8.3% 54px;border-bottom:1px solid var(--line)}
.gallery-hero .eyebrow{margin:0 0 24px}
.gallery-hero h1{font:500 clamp(54px,9vw,120px)/.94 var(--serif);letter-spacing:-.07em;margin:0;max-width:1050px}
.gallery-hero h1 em{font-weight:500}
.gallery-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:28px}
.gallery-intro p{max-width:430px;margin:0;color:#696861;font-size:13px;line-height:1.85}
.gallery-count{font-size:9px;letter-spacing:.18em;color:var(--muted);white-space:nowrap}
.photo-grid{padding:48px 5%;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;align-items:start}
.photo-card{margin:0;position:relative;overflow:hidden;background:#e5e2da;cursor:zoom-in;grid-column:span 4}
.photo-card:nth-child(5n+1){grid-column:span 7}
.photo-card:nth-child(5n+2){grid-column:span 5;margin-top:70px}
.photo-card:nth-child(5n+3){grid-column:span 4}
.photo-card:nth-child(5n+4){grid-column:span 4;margin-top:42px}
.photo-card:nth-child(5n+5){grid-column:span 4}
.photo-card img{display:block;width:100%;height:auto;max-height:850px;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1);background:#e5e2da}
.photo-card:hover img{transform:scale(1.025)}
.photo-card figcaption{display:flex;justify-content:space-between;gap:12px;padding:12px 1px 4px;font-size:9px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.photo-card figcaption span:last-child{letter-spacing:.05em}
.lightbox{position:fixed;inset:0;z-index:50;background:rgba(17,17,16,.94);display:none;align-items:center;justify-content:center;padding:5vw}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;object-fit:contain}
.lightbox button{position:absolute;top:20px;right:25px;background:none;border:1px solid rgba(255,255,255,.7);border-radius:50%;color:white;width:44px;height:44px;font-size:24px;cursor:pointer}
.lightbox .lightbox-caption{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#eee;font-size:10px;letter-spacing:.16em}
.gallery-back{display:flex;justify-content:space-between;padding:22px 5%;border-top:1px solid var(--line);font-size:9px;letter-spacing:.16em;color:var(--muted)}
@media(max-width:650px){.gallery-hero{padding:48px 5% 35px}.gallery-hero h1{font-size:clamp(48px,13vw,76px)}.gallery-intro{flex-direction:column;align-items:flex-start;gap:18px}.photo-grid{padding:28px 5%;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-card,.photo-card:nth-child(n){grid-column:span 1;margin-top:0}.photo-card:nth-child(3n+1){grid-column:span 2}.photo-card figcaption{font-size:7px;letter-spacing:.08em}.lightbox{padding:4vw}}


/* Portfolio photography update */
.hero-photo{background-image:linear-gradient(0deg,rgba(0,0,0,.34),transparent 48%),url('assets/hero-fashion-editorial.webp');background-size:cover;background-position:center 42%;}
.hero-photo:before,.hero-photo:after{display:none}
.hero-photo .visual-caption{z-index:2}
.category-wedding{background-image:linear-gradient(0deg,rgba(0,0,0,.35),transparent 65%),url('assets/wedding-01.webp');background-size:cover;background-position:center;}
.category-food{background-image:linear-gradient(0deg,rgba(0,0,0,.42),transparent 65%),url('assets/food-pizza.webp');background-size:cover;background-position:center 48%;}
.category-fashion{background-image:linear-gradient(0deg,rgba(0,0,0,.35),transparent 65%),url('assets/fashion-cover-street.webp');background-size:cover;background-position:center 35%;}
.category-wedding:after,.category-food:after,.category-fashion:after{background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 65%)}
.category-grid .work-placeholder-title{padding:18px;text-shadow:0 2px 18px rgba(0,0,0,.3)}
@media(max-width:650px){.hero-photo{background-position:center 36%}.category-grid .work-large .work-image{height:340px}}


/* Homepage reference layout — aligned to the supplied design screenshot */
.site-header{height:64px;padding:0 4%;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;background:#fbfaf8;border-bottom:1px solid #e8e6e1}
.site-header .brand{justify-self:start}.brand-name{font-style:normal;font-size:22px;letter-spacing:.015em;text-transform:uppercase;white-space:nowrap}
.main-nav{justify-content:center;gap:clamp(18px,2.2vw,36px)}.main-nav a{font:10px var(--serif);letter-spacing:.045em;color:#171715;white-space:nowrap}.main-nav a.active{position:relative}.main-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:1px;background:#171715}
.menu-toggle{display:flex;justify-self:end;flex-direction:column;gap:6px;padding:10px;background:none;border:0;cursor:pointer}.menu-toggle span{display:block;width:23px;height:1px;background:#171715}
.homepage-reference{background:#fff}.hero-reference{height:clamp(490px,38vw,590px);min-height:490px;position:relative;overflow:hidden;color:#fff;background:#33271f}.hero-reference-image{position:absolute;inset:0;background-size:cover;background-position:center center;background-repeat:no-repeat;transform:none;transition:opacity .7s ease;will-change:opacity}.hero-slide-layer{opacity:0;z-index:0}.hero-slide-layer.is-active{opacity:1;transform:none;z-index:1}.hero-reference-shade{z-index:2}.hero-reference-copy,.reference-pagination,.hero-controls{z-index:3}.hero-reference-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,12,.74) 0%,rgba(20,15,12,.58) 29%,rgba(20,15,12,.15) 57%,rgba(20,15,12,.05) 100%),linear-gradient(0deg,rgba(10,8,6,.22),transparent 30%)}
.hero-reference-copy{position:absolute;left:4%;top:50%;transform:translateY(-47%);width:min(490px,42%)}.reference-eyebrow{font:9px var(--sans);letter-spacing:.36em;margin:0 0 12px}.hero-reference h1{font:500 clamp(58px,6.2vw,92px)/.93 var(--serif);letter-spacing:-.055em;margin:0 0 25px}.reference-rule{display:block;width:40px;height:2px;background:#fff;margin:0 0 22px}.reference-description{font:14px/1.65 var(--sans);margin:0 0 27px;color:rgba(255,255,255,.9);max-width:420px}.reference-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:249px;padding:13px 16px;border:1px solid rgba(255,255,255,.9);font:9px var(--sans);letter-spacing:.23em;transition:background .2s,color .2s}.reference-button:hover{background:#fff;color:#171715}.reference-button span{font-size:17px;letter-spacing:0}.reference-pagination{position:absolute;left:4%;bottom:28px;display:flex;gap:28px;align-items:center;font:9px var(--sans);color:rgba(255,255,255,.55);cursor:default}.reference-pagination span{cursor:pointer}.reference-pagination i{pointer-events:none}.reference-pagination .selected{color:#fff}.reference-pagination i{position:absolute;left:0;bottom:-12px;width:150px;height:1px;background:rgba(255,255,255,.25)}.reference-pagination i:before{content:"";display:block;width:29px;height:2px;background:#fff;transform:translateY(-.5px)}.hero-controls{position:absolute;right:2.4%;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px}.hero-controls button{width:42px;height:42px;border:1px solid rgba(255,255,255,.7);background:rgba(20,15,12,.16);color:#fff;font:24px/1 var(--sans);cursor:pointer;transition:background .25s,color .25s,transform .25s}.hero-controls button:hover{background:#fff;color:#171715;transform:scale(1.06)}
.reference-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:28px 2.1% 30px;background:#fff}.reference-card{position:relative;display:block;overflow:hidden;height:clamp(230px,18.7vw,290px);background:#ddd;color:#fff}.reference-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.reference-card:nth-child(1) img{object-position:center 52%}.reference-card:nth-child(2) img{object-position:center 78%}.reference-card:nth-child(3) img{object-position:center 38%}.reference-card:nth-child(4) img{object-position:center 50%}.reference-card:hover img{transform:scale(1.035)}.reference-card-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.73) 0%,rgba(0,0,0,.22) 42%,rgba(0,0,0,.02) 100%)}.reference-card-no{position:absolute;left:24px;bottom:82px;font:10px var(--serif)}.reference-card-copy{position:absolute;left:24px;right:18px;bottom:18px}.reference-card-copy h2{font:500 clamp(21px,1.75vw,29px)/1.1 var(--serif);letter-spacing:-.04em;margin:0 0 10px}.reference-card-copy p{font:8px var(--sans);letter-spacing:.3em;margin:0}.reference-card-arrow{position:absolute;right:24px;bottom:17px;font:22px var(--sans)}.below-home{padding:80px 8%;border-top:1px solid #eee;background:#fbfaf8}.below-home>p:first-child{font:9px var(--sans);letter-spacing:.24em;color:#777;margin:0 0 22px}.below-home h2{font:500 clamp(36px,5vw,62px)/1.08 var(--serif);letter-spacing:-.04em;margin:0 0 20px}.below-home>p{font:13px/1.8 var(--sans);color:#777}.below-links{display:flex;gap:24px;margin-top:28px;font:11px var(--sans);text-decoration:underline;text-underline-offset:5px}.services-home{background:#f0efe9}.contact-home a{font:14px var(--serif);text-decoration:underline;text-underline-offset:5px}.site-footer{background:#fbfaf8}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto}.main-nav{grid-column:1/-1;grid-row:2;display:none;position:absolute;top:63px;left:0;right:0;background:#fbfaf8;padding:24px 5%;align-items:flex-start;flex-direction:column;gap:18px;border-bottom:1px solid #e8e6e1}.main-nav.open{display:flex}.main-nav a.active:after{display:none}.menu-toggle{grid-column:2;grid-row:1}.hero-reference{height:560px}.hero-reference-copy{width:55%}.reference-categories{grid-template-columns:repeat(3,minmax(0,1fr));padding:18px;gap:12px}.reference-card{height:300px}.reference-card-copy h2{font-size:clamp(22px,3vw,30px)}}
@media(max-width:600px){.site-header{height:66px;padding:0 5%}.brand-name{font-size:18px}.main-nav{top:65px}.hero-reference{height:600px;min-height:600px}.hero-reference-image{background-position:57% center}.hero-reference-shade{background:linear-gradient(90deg,rgba(20,15,12,.78),rgba(20,15,12,.4) 75%,rgba(20,15,12,.18)),linear-gradient(0deg,rgba(10,8,6,.25),transparent 40%)}.hero-reference-copy{left:6%;width:86%;top:48%}.hero-reference h1{font-size:clamp(56px,13vw,78px)}.reference-description{font-size:12px;max-width:330px}.desktop-break{display:none}.reference-pagination{left:6%;bottom:25px}.hero-controls{right:4%;top:auto;bottom:24px;transform:none;flex-direction:row}.hero-controls button{width:38px;height:38px}.reference-categories{grid-template-columns:1fr;padding:12px;gap:12px}.reference-card{height:310px}.reference-card-copy h2{font-size:30px}.reference-card-no{left:20px;bottom:79px}.reference-card-copy{left:20px;bottom:18px}.reference-card-arrow{right:20px;bottom:17px}.below-home{padding:60px 6%}}


/* Homepage carousel: compact header-free layout; preserve each source photo's orientation. */
.home-carousel-section{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#35291f 0%,#171513 65%,#101010 100%);color:#fff;padding:8px 0 16px;min-height:0}
.home-carousel{height:clamp(340px,40vw,520px);position:relative;overflow:hidden;isolation:isolate}
.carousel-stage{position:absolute;inset:0;perspective:1400px}
.carousel-slide{position:absolute;left:50%;top:50%;width:min(68vw,1040px);height:clamp(280px,37vw,500px);margin:0;overflow:hidden;border-radius:32px;border:1px solid rgba(255,255,255,.18);background:#29231f;box-shadow:0 24px 80px rgba(0,0,0,.42);cursor:pointer;will-change:transform,opacity,filter;transition:transform .72s cubic-bezier(.22,.72,.22,1),opacity .72s ease,filter .72s ease,box-shadow .72s ease;}
.carousel-slide.is-portrait{width:min(31vw,430px);height:clamp(330px,39vw,490px)}
.carousel-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;user-select:none;-webkit-user-drag:none}
.carousel-slide.is-current{cursor:default;box-shadow:0 28px 90px rgba(0,0,0,.48);border-color:rgba(255,255,255,.32)}
.carousel-slide.is-side img{filter:blur(4px)}
.carousel-arrow{position:absolute;top:47%;z-index:20;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(15,13,12,.36);backdrop-filter:blur(10px);color:#fff;font:32px/1 var(--sans);font-weight:300;cursor:pointer;transition:background .2s ease,transform .2s ease,border-color .2s ease}
.carousel-arrow:hover{background:rgba(255,255,255,.95);color:#181614;border-color:#fff;transform:scale(1.06)}
.carousel-prev{left:clamp(16px,4vw,60px)}.carousel-next{right:clamp(16px,4vw,60px)}
.carousel-pagination{position:absolute;z-index:20;left:50%;bottom:12px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:8px;max-width:80%;flex-wrap:wrap}
.carousel-pagination button{width:7px;height:7px;border:0;border-radius:20px;padding:0;background:rgba(255,255,255,.35);cursor:pointer;transition:width .25s ease,background .25s ease}
.carousel-pagination button[aria-current="true"]{width:29px;background:#fff}
.carousel-discover{display:flex;width:max-content;align-items:center;gap:22px;margin:9px auto 0;padding:12px 17px;border:1px solid rgba(255,255,255,.5);font:9px var(--sans);letter-spacing:.22em;color:#fff;transition:background .2s,color .2s}
.carousel-discover:hover{background:#fff;color:#171513}.carousel-discover span{font-size:17px;letter-spacing:0}
@media(max-width:800px){.home-carousel-section{min-height:0;padding-top:4px;padding-bottom:12px}.home-carousel{height:clamp(330px,48vw,430px)}.carousel-slide{width:78vw;height:clamp(260px,43vw,380px);border-radius:26px}.carousel-slide.is-portrait{width:38vw;height:clamp(300px,43vw,390px)}.carousel-arrow{width:42px;height:42px;top:46%}.carousel-prev{left:12px}.carousel-next{right:12px}}
@media(max-width:600px){.home-carousel-section{min-height:0;padding-top:0;padding-bottom:12px}.home-carousel{height:330px}.carousel-slide{width:82vw;height:260px;border-radius:22px}.carousel-slide.is-portrait{width:58vw;height:310px;border-radius:22px}.carousel-slide.is-side img{filter:blur(3.5px)}.carousel-arrow{width:36px;height:36px;font-size:27px;top:44%}.carousel-prev{left:9px}.carousel-next{right:9px}.carousel-pagination{bottom:8px;gap:6px}.carousel-pagination button{width:5px;height:5px}.carousel-pagination button[aria-current="true"]{width:22px}.carousel-discover{margin-top:0;font-size:8px;padding:9px 13px}}
@media(prefers-reduced-motion:reduce){.carousel-slide,.carousel-arrow,.carousel-pagination button{transition:none!important}}
