/* NIR Furniture — photo carousel hero, replacing the former 3D experience */
.photo-hero{
  position:relative;overflow:hidden;background:
    radial-gradient(circle at 12% 16%,rgba(217,173,114,.12),transparent 28%),
    linear-gradient(145deg,var(--hero-deep-2),var(--hero-deep));
  color:#fff;border-bottom:1px solid var(--hero-line);
}
.photo-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 84%)}
.photo-hero-shell{position:relative;z-index:1;width:min(1320px,calc(100% - 48px));min-height:690px;margin:auto;padding:118px 0 54px;display:grid;grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);gap:52px;align-items:center}
.photo-hero-copy{max-width:560px}.photo-hero-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--hero-gold);font-size:10px;font-weight:800;letter-spacing:.19em}.photo-hero-kicker::before{content:"";width:28px;height:1px;background:currentColor}
.photo-hero-copy h1{font-family:var(--serif);font-size:clamp(60px,6.7vw,104px);font-weight:500;line-height:.87;letter-spacing:-.055em;margin:22px 0 26px}.photo-hero-copy h1 em{display:block;color:var(--hero-gold-2);font-weight:500}.photo-hero-copy>p{max-width:535px;color:var(--hero-muted);font-size:14px;line-height:1.8;margin:0}
.photo-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px}.photo-hero-primary,.photo-hero-secondary{min-height:50px;border-radius:999px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:800}.photo-hero-primary{background:linear-gradient(135deg,var(--hero-gold-2),var(--hero-gold));color:var(--hero-text-on-gold);box-shadow:0 14px 34px color-mix(in srgb,var(--hero-gold) 16%,transparent)}.photo-hero-secondary{border:1px solid var(--hero-line);background:rgba(255,255,255,.045);color:#fff}
.photo-hero-trust{margin-top:34px;padding-top:24px;border-top:1px solid var(--hero-line);display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo-hero-trust div{min-width:0}.photo-hero-trust strong{display:block;font-family:var(--serif);font-size:22px;font-weight:500;color:#fff}.photo-hero-trust span{display:block;margin-top:4px;color:var(--hero-muted);font-size:9px;line-height:1.45;text-transform:uppercase;letter-spacing:.08em}
.photo-carousel{min-width:0}.photo-carousel-frame{position:relative;overflow:hidden;min-height:520px;border:1px solid var(--hero-line);border-radius:26px;background:var(--hero-surface);box-shadow:0 34px 90px rgba(0,0,0,.3)}.photo-carousel-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 52%,rgba(9,5,3,.15) 66%,rgba(9,5,3,.82) 100%)}
.photo-carousel-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .38s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.photo-carousel-image.is-changing{opacity:.12;transform:scale(1.025)}
.photo-carousel-caption{position:absolute;z-index:3;left:28px;right:28px;bottom:26px;display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.photo-carousel-caption small{display:block;color:var(--hero-gold-2);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.photo-carousel-caption h2{font-family:var(--serif);font-size:clamp(30px,3.2vw,48px);line-height:.96;font-weight:500;margin:8px 0 0;color:#fff}.photo-carousel-view{flex:0 0 auto;min-height:44px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.92);color:#20150f;display:inline-flex;align-items:center;font-size:11px;font-weight:800}
.photo-carousel-arrow{position:absolute;z-index:4;top:50%;width:50px;height:50px;margin-top:-25px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(16,10,6,.58);color:#fff;display:grid;place-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer}.photo-carousel-arrow:hover,.photo-carousel-arrow:focus-visible{background:var(--hero-gold);color:var(--hero-text-on-gold);outline:none}.photo-carousel-arrow.prev{left:16px}.photo-carousel-arrow.next{right:16px}.photo-carousel-arrow svg{width:21px;height:21px}
.photo-carousel-pause{position:absolute;z-index:4;right:16px;top:16px;min-height:40px;padding:0 13px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(16,10,6,.58);color:#fff;font-size:10px;font-weight:800;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.photo-carousel-footer{display:flex;align-items:center;gap:16px;margin-top:14px}.photo-carousel-count{flex:0 0 auto;color:var(--hero-gold-2);font-size:11px;font-weight:800;letter-spacing:.12em}.photo-carousel-dots{display:flex;gap:6px;min-width:0;flex:1}.photo-carousel-dot{width:24px;height:4px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.16);cursor:pointer;transition:width .25s ease,background .25s ease}.photo-carousel-dot.active{width:42px;background:var(--hero-gold)}.photo-carousel-swipe{color:var(--hero-muted);font-size:9px;white-space:nowrap}
.photo-carousel-thumbs{display:flex;gap:8px;margin-top:16px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;scrollbar-color:var(--hero-gold) transparent}.photo-carousel-thumb{position:relative;flex:0 0 88px;height:62px;padding:0;border:1px solid transparent;border-radius:10px;overflow:hidden;background:var(--hero-surface);opacity:.58;cursor:pointer}.photo-carousel-thumb img{width:100%;height:100%;object-fit:cover}.photo-carousel-thumb.active{opacity:1;border-color:var(--hero-gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--hero-gold) 14%,transparent)}
@media(max-width:1050px){.photo-hero-shell{grid-template-columns:minmax(300px,.8fr) 1.2fr;gap:30px}.photo-carousel-frame{min-height:480px}.photo-hero-trust{gap:8px}}
@media(max-width:760px){
  .photo-hero-shell{width:100%;min-height:0;padding:100px 0 42px;display:flex;flex-direction:column;gap:0;align-items:stretch}.photo-carousel{order:1}.photo-hero-copy{order:2;max-width:none;padding:30px 18px 0}.photo-carousel-frame{min-height:0;height:auto;aspect-ratio:4/3;border-radius:0;border-left:0;border-right:0}.photo-carousel-caption{left:18px;right:18px;bottom:18px;gap:12px}.photo-carousel-caption h2{font-size:30px}.photo-carousel-view{min-height:42px;padding:0 13px;font-size:10px}.photo-carousel-arrow{width:46px;height:46px}.photo-carousel-arrow.prev{left:10px}.photo-carousel-arrow.next{right:10px}.photo-carousel-pause{right:10px;top:10px;min-height:42px}.photo-carousel-footer{padding:0 18px;margin-top:12px}.photo-carousel-dots{overflow:hidden}.photo-carousel-dot{width:18px}.photo-carousel-dot.active{width:32px}.photo-carousel-swipe{display:none}.photo-carousel-thumbs{margin:12px 0 0;padding:0 18px 8px;scroll-padding-left:18px}.photo-carousel-thumb{flex-basis:78px;height:56px}.photo-hero-kicker{font-size:10px}.photo-hero-copy h1{font-size:clamp(48px,14vw,68px);margin:17px 0 20px}.photo-hero-copy>p{font-size:16px;line-height:1.65}.photo-hero-actions{display:grid;grid-template-columns:1fr;margin-top:24px}.photo-hero-primary,.photo-hero-secondary{width:100%;min-height:54px;font-size:14px}.photo-hero-trust{margin-top:26px;padding-top:20px;gap:8px}.photo-hero-trust strong{font-size:20px}.photo-hero-trust span{font-size:10px;line-height:1.4}
}
@media(max-width:430px){.photo-carousel-frame{aspect-ratio:1/1}.photo-carousel-caption{align-items:flex-start;flex-direction:column}.photo-carousel-view{display:none}.photo-carousel-arrow{top:auto;bottom:18px;margin:0}.photo-carousel-arrow.prev{left:auto;right:66px}.photo-carousel-arrow.next{right:14px}.photo-carousel-caption{right:124px}.photo-hero-trust{grid-template-columns:1fr 1fr}.photo-hero-trust div:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.photo-carousel-image{transition:none}.photo-carousel-dot{transition:none}}
