@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/manrope-regular.ttf') format('truetype')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/manrope-medium.ttf') format('truetype')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/manrope-semibold.ttf') format('truetype')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/manrope-bold.ttf') format('truetype')}

:root{color-scheme:light;--page:#f0f2ef;--surface:#fff;--ink:#171a19;--muted:#626963;--line:#e6e9e4;--accent:#d6f48b;--sans:'Manrope','Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sans);font-size:1rem;font-synthesis:none;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button,a{-webkit-tap-highlight-color:transparent}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}:focus-visible{outline:2px solid #497022;outline-offset:5px}.skip-link{position:fixed;top:6px;left:16px;z-index:20;background:white;padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:sticky;top:20px;z-index:5;margin:20px auto 0;width:calc(100% - 64px);max-width:1400px;background:#ffffffed;backdrop-filter:blur(20px);border:1px solid #fff;border-radius:20px;box-shadow:0 4px 24px #17251806,0 1px 3px #17251805}.header-inner{min-height:84px;padding:16px 20px 16px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px}.brand-name{font-size:1.3125rem;line-height:1.2;letter-spacing:-.04em;font-weight:700;white-space:nowrap}.brand-dot{color:#659326;padding:0 2px}.desktop-nav{display:flex;align-items:center;gap:30px}.nav-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;position:relative;padding:12px 0;white-space:nowrap;font-size:.875rem;font-weight:500;letter-spacing:-.015em;border-radius:0;color:#545c56;transition:color .18s}.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.nav-link:hover,.nav-link[aria-expanded=true],.nav-link[aria-current=page]{color:var(--ink)}.nav-link:hover::after,.nav-link[aria-expanded=true]::after,.nav-link[aria-current=page]::after{transform:scaleX(1)}.collection-toggle svg{width:15px;height:15px;transition:transform .2s}.collection-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.header-actions{display:flex;align-items:center;gap:10px}.visit-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:14px 20px;border-radius:100px;background:var(--ink);color:#fff;font-size:.875rem;font-weight:600;letter-spacing:-.01em;transition:background .18s}.visit-button:hover{background:#353d33}.visit-button svg{width:18px;height:18px;color:var(--accent)}.menu-toggle,.mobile-visit-label{display:none}
.collection-panel{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);width:min(920px,calc(100vw - 64px));padding:36px 40px;background:white;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:1fr 1.65fr;gap:48px;box-shadow:0 20px 45px #1420190d;animation:fade-in .18s ease-out}.collection-intro{padding:4px 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.1em;color:var(--muted)}.collection-intro p{font-size:1.5rem;font-weight:500;letter-spacing:-.04em;line-height:1.25;margin:22px 0 32px}.text-link{display:flex;align-items:center;gap:16px;font-size:.875rem;font-weight:500;min-height:44px;text-decoration:underline;text-decoration-color:#b6c2b0;text-underline-offset:7px}.text-link:hover{text-decoration-color:var(--ink)}.collection-links{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}.collection-links a{position:relative;padding:19px 32px 19px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px;font-size:.875rem;font-weight:500;transition:color .18s,padding-left .2s}.collection-links a::after{content:"↗";position:absolute;right:3px;top:50%;transform:translateY(-50%);font-size:1.125rem;color:#7e887e;transition:transform .2s,color .2s}.collection-links a:hover,.collection-links a:focus-visible{color:#406329;padding-left:6px}.collection-links a:hover::after{transform:translate(3px,-60%);color:var(--ink)}.collection-links a span{font-size:.875rem;font-weight:400;color:var(--muted)}

main{min-height:calc(100svh - 106px);padding:clamp(110px,22vh,230px) 24px 60px;outline:none}.preview-note{max-width:820px;text-align:center;margin:auto}.preview-label{display:inline-flex;align-items:center;min-height:32px;border:1px solid #d9dfd6;border-radius:100px;padding:7px 12px;font-size:.75rem;letter-spacing:.1em;color:var(--muted)}.preview-note h1{font-size:clamp(1.75rem,3vw,2.75rem);font-weight:600;letter-spacing:-.04em;line-height:1.08;margin:26px 0 22px;text-wrap:balance}.preview-note p{font-size:.9375rem;max-width:400px;margin:auto;color:var(--muted);line-height:1.7;text-wrap:pretty}.preview-rule{display:none}
.mobile-menu{position:fixed;inset:12px 12px auto auto;width:min(440px,calc(100% - 24px));height:auto;max-width:none;max-height:calc(100dvh - 24px);margin:0;padding:0;background:white;color:var(--ink);border:1px solid var(--line);border-radius:24px;overflow:hidden}.mobile-menu[open]{display:flex;flex-direction:column;animation:fade-in .2s ease-out}.mobile-menu::backdrop{background:#19231f70;backdrop-filter:blur(8px)}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}.close-menu{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#f0f3ed;flex-shrink:0}.mobile-menu-scroll{overflow-y:auto;overscroll-behavior:contain;padding:28px 20px max(20px,env(safe-area-inset-bottom))}.menu-eyebrow{display:block;margin:0 0 12px}.mobile-menu nav>a,.mobile-collection-toggle{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;width:100%;padding:22px 0;border-radius:0;font-size:1.0625rem;font-weight:500;letter-spacing:-.02em;text-align:left}.mobile-menu nav>a,.mobile-collection{border-bottom:1px solid var(--line)}.mobile-menu nav>a:hover,.mobile-collection-toggle:hover{color:#406329}.mobile-menu nav>a[aria-current=page]{color:#406329}.mobile-menu nav>a>span{transition:transform .2s}.mobile-menu nav>a:hover>span{transform:translate(3px,-3px)}.mobile-menu nav>a>span{font-size:1.125rem;color:#778174}.mobile-collection-toggle svg{width:18px;transition:transform .2s}.mobile-collection-toggle[aria-expanded=true] svg{transform:rotate(45deg)}.mobile-collection-links{padding:0 0 8px 18px;margin:0 0 20px;border-left:1px solid #cbd6c4}.mobile-collection-links a{display:flex;align-items:center;min-height:48px;font-size:.875rem;color:var(--muted)}.mobile-collection-links a:hover{color:var(--ink)}.mobile-menu-footer{margin-top:36px;padding:0 0 4px}.mobile-menu-footer p{font-size:1rem;line-height:1.6;font-weight:400;letter-spacing:-.01em;margin:0 0 20px;color:var(--muted)}.mobile-menu-footer .visit-button{width:100%;justify-content:space-between}.mobile-menu-footer>span{display:block;text-align:center;margin-top:14px;font-size:.75rem;line-height:1.5;color:var(--muted)}body.menu-open{overflow:hidden}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@media(max-width:1199px){.desktop-nav{display:none}.site-header{width:calc(100% - 40px)}.header-inner{min-height:80px;padding:14px 16px 14px 24px}.menu-toggle{width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:50%;background:#f0f3ed;flex-shrink:0}.menu-toggle span{width:18px;height:1.5px;background:var(--ink)}.collection-panel{display:none}}
@media(max-width:599px){.site-header{top:12px;margin-top:12px;width:calc(100% - 24px);border-radius:18px}.header-inner{min-height:72px;padding:12px 10px 12px 16px;gap:10px}.brand-name{font-size:1.125rem;letter-spacing:-.035em}.header-actions{gap:7px}.visit-button{padding:12px 14px;min-height:44px;font-size:.875rem;gap:8px}.desktop-visit-label{display:none}.mobile-visit-label{display:inline}.header-actions .visit-button svg{display:none}.menu-toggle{width:44px;height:44px}.mobile-menu-header .brand-name{font-size:1.125rem}main{padding-top:130px;min-height:calc(100svh - 86px)}.preview-note h1{font-size:1.875rem;max-width:340px;margin-inline:auto}.preview-note p{max-width:290px}}
@media(max-width:359px){.header-inner{padding-left:12px;gap:6px}.brand-name{font-size:1.08rem}.header-actions{gap:5px}.header-actions .visit-button{padding-inline:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* Full-screen interior photography, with navigation kept compact. */
body{background:#202620}.site-header{position:absolute;top:20px;left:50%;transform:translateX(-50%);margin:0;background:#fffffff2}.header-inner{min-height:76px;padding-block:12px}main{padding:0;min-height:100svh}.hero{position:relative;isolation:isolate;min-height:680px;height:100svh;overflow:hidden;background:#41483e;color:#fff;touch-action:pan-y}.hero-track{position:absolute;inset:0;overflow:hidden}.hero-slide{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;visibility:hidden;z-index:0}.hero-slide.is-active{visibility:visible;z-index:2}.hero-slide.is-leaving{visibility:visible;z-index:1}.hero-slide.is-entering{animation:interior-rise 1.15s cubic-bezier(.22,.61,.36,1) both;will-change:transform}@keyframes interior-rise{from{transform:translateY(100%)}to{transform:translateY(0)}}.hero-slide img{height:100%;width:100%;display:block;object-fit:cover;object-position:center;transform:scale(1.025)}.hero-slide.is-active img{animation:interior-drift 9s ease-out both}.hero-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(15,21,16,.23),rgba(15,21,16,.44) 28%,rgba(15,21,16,0) 53%,rgba(10,16,12,.58) 100%)}.hero-copy{position:relative;z-index:1;text-align:center;padding:clamp(155px,21vh,215px) 24px 0;text-shadow:0 2px 20px #10191066}.hero-eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.16em;margin:0 0 18px;line-height:1.7}.hero-copy h1{font-size:clamp(2rem,3.3vw,3rem);font-weight:500;letter-spacing:-.045em;line-height:1.15;margin:0 0 14px;text-wrap:balance}.hero-copy>p:last-child{font-size:.9375rem;line-height:1.6;margin:0;color:#fff}.hero-bottom{position:absolute;inset:auto 0 0;z-index:1;padding:0 clamp(24px,4.5vw,72px) 24px}.hero-actions{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 auto 40px}.hero-button{display:flex;align-items:center;justify-content:center;min-width:230px;min-height:48px;padding:14px 24px;border-radius:4px;font-size:.875rem;font-weight:600;transition:background .2s,color .2s}.hero-button-primary{background:#fff;color:#202621}.hero-button-primary:hover{background:#e9eee7}.hero-button-secondary{background:#ffffff12;backdrop-filter:blur(10px);border:1px solid #ffffffc9;color:#fff}.hero-button-secondary:hover{background:#fff;color:#202621}.hero-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.hero-scene{display:flex;align-items:center;gap:14px;font-size:.8125rem;line-height:1.5;margin:0}.scene-number{font-variant-numeric:tabular-nums;color:#fff}.scene-divider{height:1px;width:28px;background:#ffffff73}.hero-dots{display:flex;align-items:center;gap:6px}.hero-dot{display:grid;place-items:center;width:44px;height:44px;padding:0}.hero-dot span{height:2px;width:24px;background:#ffffff59;transition:background .25s,width .25s}.hero-dot.is-active span{background:#fff;width:34px}.hero-controls{justify-self:end;display:flex;gap:4px}.hero-control{display:grid;place-items:center;width:44px;height:44px;border:1px solid transparent;border-radius:50%;color:#fff;transition:background .2s}.hero-control:hover{background:#ffffff20}.hero :focus-visible{outline:2px solid white;outline-offset:4px}.hero.is-paused .hero-slide img{animation-play-state:paused}.inner-page{background:var(--page)}.inner-page main{padding:220px 24px 60px}.inner-page .site-header{position:absolute}.preview-note{margin:auto}@keyframes interior-drift{from{transform:scale(1.07) translateX(-.4%)}to{transform:scale(1.025) translateX(.4%)}}
@media(max-width:1199px){.hero{min-height:680px}.hero-copy{padding-top:175px}}
@media(max-width:599px){.site-header{top:12px;margin:0}.header-inner{min-height:68px;padding-block:10px}.hero{height:100svh;min-height:620px}.hero-copy{padding:145px 20px 0}.hero-eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:14px}.hero-copy h1{font-size:2rem;max-width:310px;margin-inline:auto}.hero-copy>p:last-child{font-size:.875rem}.hero-slide img{object-position:50% center}.hero-bottom{padding:0 20px max(16px,env(safe-area-inset-bottom))}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}.hero-button{min-width:0;min-height:48px;padding:12px 10px;font-size:.8125rem}.hero-toolbar{grid-template-columns:1fr auto;gap:4px 10px}.hero-scene{font-size:.75rem;gap:10px}.scene-divider{width:16px}.hero-controls{grid-column:2;grid-row:1}.hero-dots{grid-column:1/-1;grid-row:2;justify-self:center}.hero-control{width:44px;height:44px}.inner-page main{padding-top:170px}}
@media(max-height:650px) and (min-width:600px){.hero{min-height:540px}.hero-copy{padding-top:140px}.hero-actions{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.hero-track{transition:none}.hero-slide,.hero-slide.is-entering,.hero-slide img,.hero-slide.is-active img{animation:none;transform:none}}

/* Contact shortcuts remain clear of the slideshow controls. */
.floating-contact{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:6;display:flex;flex-direction:column;gap:12px}.contact-button{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff;border:1px solid #ffffff3d;box-shadow:0 4px 16px #00000029;transition:transform .2s,box-shadow .2s}.contact-button:disabled{opacity:1;cursor:default}.contact-button svg{width:25px;height:25px;stroke-width:1.65}.contact-whatsapp{background:#168d51}.contact-phone{background:#202722}.contact-phone svg{width:21px;height:21px}.contact-button:hover,.contact-button:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px #00000035}.contact-tooltip{position:absolute;right:calc(100% + 12px);white-space:nowrap;background:#fff;color:#202722;padding:8px 12px;border-radius:5px;font-size:.8125rem;line-height:1.4;box-shadow:0 3px 12px #00000018;opacity:0;visibility:hidden;transform:translateX(4px);transition:opacity .18s,transform .18s,visibility .18s;pointer-events:none}.contact-button:hover .contact-tooltip,.contact-button:focus-visible .contact-tooltip{opacity:1;visibility:visible;transform:none}.hero-toolbar{padding-right:70px}.contact-button:focus-visible{outline:2px solid white;outline-offset:4px}
@media(max-width:599px){.floating-contact{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));flex-direction:row;gap:10px}.contact-button{width:48px;height:48px}.hero-toolbar{padding-right:0;padding-bottom:60px}.contact-tooltip{right:0;top:auto;bottom:calc(100% + 10px)}.inner-page main{padding-bottom:100px}}

/* Fit the complete room on narrow screens instead of cropping a landscape
   photograph to the shape of a tall phone. Keep copy and controls off the image. */
@media (max-width:599px), (max-width:900px) and (orientation:portrait){
  .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;height:auto;min-height:100svh;background:#202620;overflow:hidden}
  .hero-copy{grid-column:1;grid-row:1;padding:120px 20px 26px;text-shadow:none}
  .hero-copy h1{font-size:1.875rem;max-width:none;margin-bottom:10px}
  .hero-eyebrow{font-size:.75rem;letter-spacing:.075em;margin-bottom:12px}
  .hero-copy>p:last-child{font-size:.875rem;color:#e0e5de}
  .hero-track{position:relative;inset:auto;grid-column:1;grid-row:2;align-self:stretch;width:100%;min-height:0;aspect-ratio:1672/941}
  .hero-slide img,.hero-slide.is-active img{object-fit:contain;object-position:center;width:100%;height:100%;transform:none;animation:none}
  .hero-shade{display:none}
  .hero-bottom{position:relative;inset:auto;grid-column:1;grid-row:3;padding:24px 20px max(16px,env(safe-area-inset-bottom))}
  .hero-actions{margin-bottom:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-button{min-width:0;min-height:48px;padding:12px 10px;font-size:.8125rem}
  .hero-toolbar{grid-template-columns:1fr auto;padding-right:0;padding-bottom:60px;gap:4px 10px}
  .hero-controls{grid-column:2;grid-row:1}.hero-dots{grid-column:1/-1;grid-row:2;justify-self:center}
  .floating-contact{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));flex-direction:row;gap:10px}
  .contact-button{width:48px;height:48px}
  .contact-tooltip{right:0;bottom:calc(100% + 10px)}
}
@media(max-width:359px){.hero-copy{padding-inline:16px}.hero-copy h1{font-size:1.625rem}.hero-bottom{padding-inline:16px}.hero-eyebrow{letter-spacing:.025em}}

/* A gentle opening reveal complements the upward slide entrance. */
.hero-slide.is-entering img{animation:curtain-unveil 1.15s cubic-bezier(.22,.61,.36,1) both,interior-drift 9s ease-out both}
@keyframes curtain-unveil{from{clip-path:inset(0 18% 0 18%)}to{clip-path:inset(0 0 0 0)}}
@media(max-width:599px){.hero-dots{gap:0}.hero-dot{width:36px;height:44px}.hero-dot span{width:18px}.hero-dot.is-active span{width:28px}}
@media(max-width:599px),(max-width:900px) and (orientation:portrait){.hero-slide.is-entering img{animation:curtain-unveil 1.15s cubic-bezier(.22,.61,.36,1) both;transform:none}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-entering img{animation:none;clip-path:none;transform:none}}

/* One clear contact action over the centre of the room photograph. */
.hero-contact{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);z-index:3;max-width:calc(100% - 40px)}
.hero-contact-link{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 22px;background:#f8faf4;color:#23311e;border:1px solid #ffffffb3;border-radius:100px;box-shadow:0 8px 32px #101b1233;font-size:.875rem;line-height:1.5;font-weight:600;letter-spacing:-.01em;white-space:nowrap;transition:background .2s,box-shadow .2s}
.hero-contact-link>svg{width:22px;height:22px;color:#27864c}.hero-contact-arrow{font-size:1.125rem;margin-left:6px}.hero-contact-link:hover{background:#e7f1da;box-shadow:0 10px 36px #101b1250}.hero-contact-link:focus-visible{outline:2px solid #fff;outline-offset:5px}.hero-contact-link::after{content:'';position:absolute;inset:-1px;border:1px solid #fff;border-radius:inherit;opacity:0;pointer-events:none}
.hero-contact-link.contact-attention{animation:contact-nudge 3s ease-in-out infinite}.hero-contact-link.contact-attention::after{animation:contact-ring 3s ease-out infinite}
@keyframes contact-nudge{0%,33%,100%{transform:translateY(0) scale(1)}13%{transform:translateY(-5px) scale(1.025)}23%{transform:translateY(1px) scale(1)}}
@keyframes contact-ring{0%{transform:scale(1);opacity:.7}43%,100%{transform:scale(1.2,1.5);opacity:0}}
@media(max-width:599px),(max-width:900px) and (orientation:portrait){.hero-contact{position:relative;inset:auto;transform:none;grid-column:1;grid-row:2;align-self:center;justify-self:center}.hero-contact-link{min-height:48px;padding:12px 18px;gap:10px}}
@media(prefers-reduced-motion:reduce){.hero-contact-link,.hero-contact-link.contact-attention,.hero-contact-link.contact-attention::after{animation:none!important;transition:none!important}}

/* Ten services and interiors share one compact, mobile-safe carousel. */
.hero-dots{min-width:0;max-width:100%;gap:2px}.hero-dot{width:32px;flex:0 0 32px}.hero-dot span{width:16px}.hero-dot.is-active span{width:26px}.hero-scene{min-width:0;flex-wrap:wrap;row-gap:3px}.scene-name{min-width:0}.hero-image-note{font-size:.75rem;line-height:1.5;opacity:.8;flex-basis:100%;padding-left:0}.desktop-nav{gap:24px}
@media(max-width:599px){.hero-dots{gap:0}.hero-dot{width:26px;flex-basis:26px}.hero-dot span{width:12px}.hero-dot.is-active span{width:20px}.hero-scene{column-gap:8px}.scene-name{flex:1 1 100px}}

/* Photo links stay inside the active slide; original photos keep their framing. */
.hero-track{z-index:0}.hero-slide.is-photo::before{content:'';position:absolute;inset:-28px;background-image:var(--slide-photo);background-size:cover;background-position:center;filter:blur(24px) brightness(.42);pointer-events:none}.hero-slide.is-photo img,.hero-slide.is-photo.is-active img,.hero-slide.is-photo.is-entering img{position:relative;z-index:1;object-fit:contain;transform:none;animation:none}.hero-slide-link{position:absolute;z-index:3;top:112px;right:clamp(24px,4.5vw,72px);display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;max-width:calc(100% - 32px);padding:10px 16px;border:1px solid #ffffffb3;border-radius:5px;background:#fffffff0;color:#263320;box-shadow:0 3px 16px #1520151a;font-size:.875rem;font-weight:500;line-height:1.5;transition:background .2s,box-shadow .2s}.hero-slide-link:hover{background:#e7f1da;box-shadow:0 6px 22px #15201533}.hero-slide-link:focus-visible{outline:2px solid #fff;outline-offset:4px}.hero-slide-link>span:last-child{font-size:1.0625rem}
@media(max-width:599px),(max-width:900px) and (orientation:portrait){.hero-slide-link{top:12px;right:12px;min-height:40px;padding:8px 12px;gap:12px;font-size:.8125rem}.hero-slide.is-photo::before{filter:blur(18px) brightness(.45)}}
@media(max-width:599px){.hero-dot{width:24px;flex-basis:24px}}

/* The landing view is photographs and a single centred phone action. */
.hero.hero-clean{display:block;height:100svh;min-height:540px;background:#202620}.hero-clean .hero-track{position:absolute;inset:0;grid-column:auto;grid-row:auto;width:100%;height:100%;aspect-ratio:auto}.hero-clean .hero-contact{position:absolute;inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);grid-column:auto;grid-row:auto}.hero-clean:focus-visible{outline:2px solid #e5efda;outline-offset:-4px}
@media(max-width:599px),(max-width:900px) and (orientation:portrait){.hero.hero-clean{height:100svh;min-height:480px}.hero-clean .hero-slide img{object-fit:contain;transform:none}}

/* Every landing photograph fills the viewport, including portrait source photos. */
.hero.hero-clean{height:100svh;height:100dvh;min-height:0}.hero.hero-clean .hero-slide img{width:100%;height:100%;object-fit:cover;object-position:var(--image-focus,50% 50%)}.hero.hero-clean .hero-slide.is-photo::before{display:none}

/* Phone-first framing keeps curtains and installation details in view. */
.collection-panel{max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain}
.hero-offer{position:absolute;top:112px;left:50%;transform:translateX(-50%);z-index:3;width:max-content;max-width:calc(100% - 24px);padding:14px 18px;background:transparent;border:1px solid transparent;border-radius:12px;backdrop-filter:none;box-shadow:none;color:#fff;text-align:center;text-shadow:0 1px 3px #000c,0 2px 12px #0009}
.offer-copy{min-width:0}.offer-line{margin:0;font-size:1rem;line-height:1.4;font-weight:750;color:#fff}.offer-service{margin:5px 0;min-height:1.4em;font-size:1.25rem;line-height:1.4;font-weight:750;color:#f1d4a6;letter-spacing:.035em;white-space:nowrap}.offer-price{margin:0;font-size:.8125rem;line-height:1.5;font-weight:650;color:#e0e8dc}.offer-price strong{font-weight:800}.offer-caret{display:inline-block;width:1px;height:1em;margin-left:3px;background:#f1d4a6;vertical-align:-.1em;opacity:0}.is-typing .offer-caret{opacity:1;animation:offer-caret .65s steps(1) infinite}
.offer-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes offer-caret{50%{opacity:0}}
@media(max-width:599px){.hero-offer{top:98px;padding:12px}.offer-line{font-size:.875rem}.offer-service{font-size:1.125rem;letter-spacing:.025em;margin:4px 0}.offer-price{font-size:.75rem;letter-spacing:0}}
@media(max-height:500px) and (orientation:landscape){.hero-offer{padding-block:6px}.offer-line{font-size:.875rem;line-height:1.25}.offer-service{font-size:1rem;line-height:1.25;margin:2px 0}.offer-price{font-size:.75rem;line-height:1.25}}
@media(prefers-reduced-motion:reduce){.offer-caret{display:none}}
@media (orientation:portrait) {
  .hero.hero-clean .hero-slide img {
    object-position:var(--mobile-focus,50% 50%);
    transform:none;
    animation:none;
  }
}
@media (max-width:599px) {
  .site-header { top:max(12px,env(safe-area-inset-top)); }
  .header-inner { padding-inline:12px 8px; gap:8px; }
  .brand-name { font-size:1.0625rem; }
  .header-actions { flex-shrink:0; gap:6px; }
  .header-actions .visit-button { padding-inline:12px; }
  .mobile-menu { top:max(12px,env(safe-area-inset-top)); max-height:calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom))); }
  .mobile-menu-header { padding:12px 16px; }
  .mobile-menu-scroll { min-height:0; padding:12px 20px max(24px,env(safe-area-inset-bottom)); }
  .mobile-menu nav>a,.mobile-collection-toggle { min-height:52px; padding-block:15px; }
  .hero-contact { max-width:calc(100% - 32px); }
  .hero-contact-link { max-width:100%; }
}
@media (max-width:359px) {
  .header-actions>.visit-button { display:none; }
}
@media (max-height:500px) and (orientation:landscape) {
  .site-header { top:max(8px,env(safe-area-inset-top)); }
  .header-inner { min-height:60px; padding-block:6px; }
  .hero.hero-clean .hero-contact { top:58%; }
  .floating-contact { flex-direction:row; gap:8px; bottom:max(12px,env(safe-area-inset-bottom)); }
}

/* Owner identity and direct contact above the main navigation. */
.site-identity-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:34px;padding:7px clamp(24px,4vw,64px);background:#202b22;color:#f5f8f1;font-size:.75rem;line-height:1.35;letter-spacing:.01em}.site-identity-bar>span{display:flex;align-items:center;gap:10px}.site-identity-bar strong{font-weight:700}.identity-role{color:#cbd8c9}.site-identity-bar a{color:#f5f8f1;text-decoration:none;font-weight:600;white-space:nowrap}.site-identity-bar a:hover,.site-identity-bar a:focus-visible{text-decoration:underline}.site-header{top:58px}
.business-email{display:block;margin:18px 0 8px;color:inherit;font-size:.8125rem;text-decoration:none}.business-email:hover,.business-email:focus-visible{text-decoration:underline}
@media(max-width:599px){.site-identity-bar{align-items:flex-start;flex-direction:column;gap:2px;padding:6px 16px;font-size:.6875rem}.site-identity-bar>span{gap:7px}.site-identity-bar a{white-space:normal}.site-header{top:76px}}

/* Refined owner bar on small screens: editorial name, clear role, warm contact accent. */
.site-identity-bar{background:#26352a;border-bottom:1px solid #b99764;color:#f7f4ec}.site-identity-bar strong{font-family:Georgia,'Times New Roman',serif;font-size:.9rem;font-weight:600;letter-spacing:.01em;color:#f0d1a0}.site-identity-bar a{color:#f0d1a0}
@media(max-width:599px){.site-identity-bar{min-height:38px;justify-content:center;padding:7px 16px;background:#26352a}.site-identity-bar>span{display:block;width:100%;line-height:1.2;text-align:center}.site-identity-bar strong{display:block;font-size:.95rem;line-height:1.2}.site-identity-bar .identity-role,.site-identity-bar a{display:none}.site-header{top:52px}}
