/* Quiet showroom: one hierarchy, continuous light, and photographs that merge into their own colour. */
:root{--scene-hairline:rgba(51,151,191,.2);--scene-depth:rgba(35,116,152,.13);--scene-wash:rgba(244,252,255,.86)}
body[data-theme=dark]{--scene-hairline:rgba(140,211,236,.27);--scene-depth:rgba(0,10,29,.33);--scene-wash:rgba(10,29,49,.85)}
body{overflow-x:clip}
.section-shell{max-width:1160px}
section{scroll-margin-top:34px}
.visual-showcase{padding-block:78px 82px}
.story{padding-block:55px 88px;gap:34px}
.collection{padding-block:55px 65px}
.feature{padding-block:75px 90px}
.sponge-scene{padding-block:65px 95px;gap:35px}
.films{padding-block:75px 100px}
.audience{padding-block:65px 95px}
.section-heading{margin-bottom:30px}
.section-heading h2,.story h2,.collection h2,.feature h2,.sponge-scene h2,.films h2,.audience h2,.contact-scene h2{font-size:clamp(1.85rem,4.2vw,3.65rem);letter-spacing:-.035em}
html[data-text-direction=rtl] .section-heading h2,html[data-text-direction=rtl] .story h2,html[data-text-direction=rtl] .collection h2,html[data-text-direction=rtl] .feature h2,html[data-text-direction=rtl] .sponge-scene h2,html[data-text-direction=rtl] .films h2,html[data-text-direction=rtl] .audience h2{letter-spacing:normal}
/* A restrained moving water-light plane connects the sections without extra content. */
.ambient::before{content:"";position:absolute;inset:-12% -18%;background:radial-gradient(ellipse 42% 28% at 12% 20%,rgba(83,189,224,.2),transparent 75%),radial-gradient(ellipse 33% 25% at 89% 63%,rgba(239,160,204,.15),transparent 80%),linear-gradient(140deg,transparent 31%,rgba(125,211,236,.075) 48%,transparent 64%);background-size:125% 125%;animation:light-tide 32s ease-in-out infinite alternate;pointer-events:none}
.ambient-orb{opacity:.27;filter:blur(68px);animation-duration:36s}
.ambient-bubble{opacity:calc(var(--alpha) * .72);box-shadow:inset -4px -6px 11px rgba(36,155,197,.2),inset 4px 4px 8px rgba(255,255,255,.9),0 5px 15px rgba(35,128,174,.12)}
body[data-theme=dark] .ambient::before{background:radial-gradient(ellipse 42% 31% at 12% 20%,rgba(33,134,190,.15),transparent 75%),radial-gradient(ellipse 34% 28% at 89% 63%,rgba(140,75,173,.15),transparent 80%),linear-gradient(140deg,transparent 33%,rgba(87,166,216,.08) 49%,transparent 63%)}
body[data-theme=dark] .ambient-bubble{opacity:calc(var(--alpha) * .65)}
@keyframes light-tide{to{background-position:18% 9%;transform:translate3d(2%,-2%,0)}}
/* Hero controls are one calm action group. */
.hero::before{inset:2% -4% 10%;background:radial-gradient(ellipse at 74% 45%,rgba(113,199,227,.12),transparent 52%),radial-gradient(ellipse at 17% 70%,rgba(244,178,215,.08),transparent 50%)}
.hero-copy::before{filter:blur(18px);opacity:.75}
.hero-copy .location-pill{margin-bottom:22px}
.hero-description{margin-block:21px 25px;max-width:590px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
.hero-contact{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:space-between;gap:15px;min-height:49px;padding:6px 7px 6px 19px;border:1px solid rgba(255,255,255,.91);border-radius:999px;background:linear-gradient(115deg,rgba(225,246,253,.88),rgba(250,237,246,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 10px 25px rgba(31,106,145,.12);color:var(--ink);font-size:.88rem;font-weight:700;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.hero-contact::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.7) 48%,transparent 78%);transform:translateX(-130%);transition:transform .75s ease;pointer-events:none}
.hero-contact:hover{transform:translateY(-3px);border-color:rgba(110,200,227,.65);box-shadow:0 14px 28px rgba(31,106,145,.17)}
.hero-contact:hover::before,.hero-contact:focus-visible::before{transform:translateX(130%)}
.hero-contact-icon{display:grid;place-items:center;width:35px;height:35px;flex:none;border-radius:50%;color:#fff;background:linear-gradient(140deg,#1684ac,#62b5d0);font-size:1.05rem;transition:transform .3s ease}
.hero-contact:hover .hero-contact-icon{transform:rotate(36deg)}
.hero-actions .text-link{font-size:.82rem;gap:13px;padding-bottom:4px;border-color:rgba(16,129,171,.42)}
.hero-actions .text-link:hover{gap:17px}
body[data-theme=dark] .hero-contact{background:linear-gradient(115deg,rgba(39,84,110,.79),rgba(52,50,85,.73));border-color:rgba(160,217,239,.28);box-shadow:inset 0 1px 0 rgba(224,244,255,.14),0 12px 28px rgba(0,8,24,.23)}
body[data-theme=dark] .hero-contact-icon{background:linear-gradient(140deg,#137baa,#8a79b8)}
/* Each photograph keeps its proportions. A tiny blurred version supplies matching colour behind it. */
.image-shell,.gallery-slide,.stack-image{isolation:isolate;background:linear-gradient(145deg,#e6f5f8,#faedf4);border:1px solid rgba(255,255,255,.87);box-shadow:inset 0 1px rgba(255,255,255,.68),0 16px 39px var(--scene-depth)}
.image-shell::before,.gallery-slide::before,.stack-image::before{content:"";position:absolute;inset:-1px;z-index:0;background-image:var(--scene-image);background-size:cover;background-position:center;opacity:.65;transform:scale(1.025);pointer-events:none}
.image-shell::after,.gallery-slide::after,.stack-image::after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;border:1px solid var(--scene-hairline);background:linear-gradient(132deg,rgba(255,255,255,.28),transparent 31%,transparent 69%,rgba(255,255,255,.16));box-shadow:inset 0 1px 0 rgba(255,255,255,.68),inset 0 0 24px rgba(255,255,255,.12);pointer-events:none}
.image-shell img,.gallery-slide img,.stack-image img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent!important;mask-image:radial-gradient(ellipse 90% 88% at 50% 50%,#000 66%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 90% 88% at 50% 50%,#000 66%,transparent 100%)}
.editorial-grid figcaption,.gallery-slide figcaption{z-index:3}
.image-shell{border-radius:30px}
.editorial-grid{gap:14px;align-items:center}
.editorial-grid .editorial-main{height:min(116vw,510px)}
.editorial-grid .editorial-small,.editorial-grid .editorial-tall{height:min(53vw,228px);margin:0}
.editorial-grid .editorial-main img,.editorial-grid .editorial-small img,.editorial-grid .editorial-tall img{aspect-ratio:auto}
.editorial-grid figcaption{left:12px;right:12px;bottom:12px;padding:10px 12px;background:rgba(246,252,255,.84);border:1px solid rgba(255,255,255,.72);box-shadow:0 5px 16px rgba(38,97,128,.1)}
.gallery-slide{border-radius:30px;box-shadow:0 16px 40px var(--scene-depth)}
.gallery-slide img{position:absolute;inset:0}
.gallery-slide figcaption{background:rgba(13,55,79,.72)}
.gallery-slide.active{box-shadow:0 22px 48px var(--scene-depth)}
.gallery-slide.active::after{background:linear-gradient(130deg,rgba(255,255,255,.3),transparent 34%,transparent 72%,rgba(255,255,255,.2));animation:glass-glance .85s ease-out both}
@keyframes glass-glance{from{opacity:.36;transform:translateX(-9%)}to{opacity:1;transform:translateX(0)}}
body[data-theme=dark] .image-shell,body[data-theme=dark] .gallery-slide,body[data-theme=dark] .stack-image{background:linear-gradient(145deg,#173950,#302b46);border-color:rgba(153,219,243,.29);box-shadow:inset 0 1px rgba(212,241,255,.14),0 20px 48px var(--scene-depth)}
body[data-theme=dark] .image-shell::before,body[data-theme=dark] .gallery-slide::before,body[data-theme=dark] .stack-image::before{opacity:.4;filter:brightness(.63) saturate(.83)}
body[data-theme=dark] .image-shell::after,body[data-theme=dark] .gallery-slide::after,body[data-theme=dark] .stack-image::after{background:linear-gradient(130deg,rgba(170,223,244,.11),transparent 36%,transparent 70%,rgba(197,147,209,.09));box-shadow:inset 0 1px rgba(220,245,255,.17)}
body[data-theme=dark] .editorial-grid figcaption{background:rgba(11,39,58,.76);border-color:rgba(190,230,247,.19)}
/* Video posters inherit the same softened, glass-edged setting. */
.video-frame{position:relative;isolation:isolate;background:linear-gradient(145deg,#d8eef6,#f6e8f1);border-color:rgba(255,255,255,.85);box-shadow:0 16px 39px var(--scene-depth)}
.video-frame::before{content:"";position:absolute;z-index:0;inset:0;background:var(--scene-image) center/cover;opacity:.56;pointer-events:none}
.video-frame::after{content:"";position:absolute;z-index:2;inset:0;border-radius:inherit;box-shadow:inset 0 1px rgba(255,255,255,.62),inset 0 0 0 1px var(--scene-hairline);pointer-events:none}
.video-frame video{position:relative;z-index:1;background:transparent;object-fit:contain}
body[data-theme=dark] .video-frame{background:#142f48;border-color:rgba(153,219,243,.25)}
body[data-theme=dark] .video-frame::before{opacity:.3;filter:brightness(.6)}
/* The brand artwork uses the same colour language, with no hard photographic rectangle. */
.hero-art-frame{isolation:isolate;border-radius:38px 52px 40px 52px;box-shadow:inset 0 1px rgba(255,255,255,.95),0 23px 53px var(--scene-depth)}
.hero-art-frame::before{display:none}
.hero-art-frame img,.hero-art-frame:hover img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center;transform:none;mask-image:none;-webkit-mask-image:none}
.hero-art-frame .hero-dark-image{display:none}
.hero-art-gloss{z-index:2}
.hero-art-frame::after{z-index:3;opacity:.55}
body[data-theme=dark] .hero-art-frame .hero-light-image{display:none}
body[data-theme=dark] .hero-art-frame .hero-dark-image{display:block;filter:none}
.stack-gallery{height:clamp(300px,48vw,515px)}
.stack-images{width:min(78%,420px);height:72%}
.stack-image img{position:absolute;inset:0}
.stack-image[data-offset="1"]{transform:translateX(23%) rotate(4deg) scale(.87);opacity:.62;filter:blur(.55px)}
.stack-image[data-offset="-1"]{transform:translateX(-23%) rotate(-4deg) scale(.87);opacity:.62;filter:blur(.55px)}
/* One movement vocabulary: slow light, brief image entrance, short interactive response. */
.image-shell.reveal img{transition:transform .8s cubic-bezier(.18,.74,.24,1),opacity .8s ease,mask-image .8s ease}
.image-shell.reveal:not(.visible) img{transform:translateY(9px) scale(.985);opacity:.75}
.image-shell.reveal.visible img{transform:none;opacity:1}
.image-shell:hover img{transform:scale(1.012)}
@media(min-width:700px){
 .hero-art{margin-inline:0;max-width:none}
 .hero-actions{gap:14px 22px}
 .editorial-grid{grid-template-columns:1.1fr .92fr .92fr;gap:18px}
 .editorial-grid .editorial-main{height:min(43vw,530px)}
 .editorial-grid .editorial-small,.editorial-grid .editorial-tall{height:min(34vw,420px);margin:0}
 .feature-image{border-radius:32px 54px 32px 54px}
}
@media(max-width:699px){
 .hero{min-height:0}
 .hero-copy .location-pill{margin-bottom:18px}
 .hero-description{margin:14px auto 19px;line-height:1.65}
 .hero-actions{justify-content:center;gap:11px 18px}
 .hero-contact{font-size:.84rem;min-height:47px}
 .hero-actions .text-link{font-size:.78rem}
 .hero-art{margin-block:18px 3px}
 .hero-art-frame{border-radius:32px 42px 34px 44px}
 .editorial-grid .editorial-main{height:min(116vw,440px)}
 .visual-showcase{padding-block:65px 76px}
 .story{padding-block:45px 80px}
 .collection{padding-block:45px 60px}
 .feature{padding-block:65px 80px}
 .sponge-scene{padding-block:62px 82px}
 .films{padding-block:65px 85px}
 .audience{padding-block:60px 85px}
 .ambient::before{animation-duration:45s}
}
@media(max-width:380px){.hero-actions{flex-direction:column;gap:13px}.hero-actions .text-link{min-height:39px}}
@media(prefers-reduced-motion:reduce){
 .ambient::before,.hero-art-frame,.gallery-slide.active::after{animation:none!important}
 .image-shell.reveal img,.image-shell:hover img,.hero-contact,.hero-contact::before,.hero-contact-icon{transition:none!important;transform:none!important}
}

/* Crisp rounded flag tiles echo the reference without the old rippling overlay. */
.flag-orb,.option-flag-shell,
body[data-theme=dark] .flag-orb,body[data-theme=dark] .option-flag-shell{
  position:relative;display:block;flex:none;overflow:hidden;isolation:isolate;
  padding:0;border:1px solid rgba(255,255,255,.82);border-radius:6px;
  background:#fff;
  box-shadow:0 0 0 1px rgba(16,74,107,.12),0 5px 11px rgba(18,77,112,.19);
  filter:none;transform:none;
}
.language-trigger .flag-orb{width:35px;height:26px}
.option-flag-shell{width:47px;height:34px;transition:transform .23s ease,box-shadow .23s ease}
.flag-orb .language-flag,.option-flag-shell .option-flag{
  display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;
  object-fit:cover;object-position:center;background:#fff;box-shadow:none;filter:none;clip-path:none;
}
.flag-orb::after,.option-flag-shell::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.11),transparent 37%,rgba(2,35,57,.04));
}
.language-option{min-height:56px;gap:14px;padding:8px 12px;font-size:1.04rem;line-height:1.25}
.language-option .option-name{flex:1;min-width:0;text-align:left}
.language-option .option-code{display:none}
.language-option[aria-selected=true]{background:linear-gradient(105deg,rgba(163,207,244,.55),rgba(193,226,250,.59));border-color:rgba(116,179,227,.27)}
.language-option:hover .option-flag-shell,.language-option:focus-visible .option-flag-shell{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(16,74,107,.12),0 7px 14px rgba(18,77,112,.2)}
body[data-theme=dark] .flag-orb,body[data-theme=dark] .option-flag-shell{border-color:rgba(255,255,255,.25);box-shadow:0 0 0 1px rgba(166,217,240,.23),0 5px 14px rgba(0,8,22,.46)}
body[data-theme=dark] .language-option[aria-selected=true]{background:linear-gradient(105deg,rgba(50,126,178,.45),rgba(91,157,205,.29));border-color:rgba(133,199,236,.29)}
@media(max-width:699px){.language-trigger .flag-orb{width:32px;height:24px}.option-flag-shell{width:46px;height:33px}}
@media(max-width:359px){.language-trigger .flag-orb{width:30px;height:23px}}
@media(prefers-reduced-motion:reduce){.option-flag-shell{transition:none!important}.language-option:hover .option-flag-shell,.language-option:focus-visible .option-flag-shell{transform:none}}

/* Let the browser route vertical swipes to the page and horizontal swipes to the photo rail. */
.horizontal-gallery{touch-action:auto}

/* The hero has two aligned shortcuts above the title and one clear product link below it. */
.hero-top-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin-bottom:22px;direction:ltr}
.hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{min-height:54px;margin:0;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 7px 6px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.91);background:linear-gradient(115deg,rgba(225,246,253,.88),rgba(250,237,246,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 10px 25px rgba(31,106,145,.12);font-size:.81rem;color:var(--ink);line-height:1.27;text-align:left;white-space:normal;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.hero-top-actions .location-pill svg{width:17px;height:17px;flex:none}
.hero-top-actions .location-pill>span:not(.location-arrow),.hero-top-actions .hero-contact>span:first-child{min-width:0;overflow-wrap:break-word}
.hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:35px;height:35px;flex:none;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,#1684ac,#62b5d0);color:#fff;font-size:1rem}
.hero-top-actions .location-pill:hover,.hero-top-actions .hero-contact:hover{transform:translateY(-3px);border-color:rgba(110,200,227,.65);box-shadow:0 14px 28px rgba(31,106,145,.17)}
.hero-top-actions .location-pill:hover .location-arrow{transform:rotate(-28deg);background:linear-gradient(140deg,#1684ac,#62b5d0)}
.hero-top-actions .location-pill:focus-visible,.hero-top-actions .hero-contact:focus-visible,.hero-explore:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.hero-actions .hero-explore{min-width:225px}
body[data-theme=dark] .hero-copy .hero-top-actions .location-pill,body[data-theme=dark] .hero-top-actions .hero-contact{background:linear-gradient(115deg,rgba(39,84,110,.79),rgba(52,50,85,.73));border-color:rgba(160,217,239,.28);box-shadow:inset 0 1px 0 rgba(224,244,255,.14),0 12px 28px rgba(0,8,24,.23)}
body[data-theme=dark] .hero-top-actions .location-arrow,body[data-theme=dark] .hero-top-actions .hero-contact-icon{background:linear-gradient(140deg,#137baa,#8a79b8)}
@media(max-width:699px){
 .hero-top-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:480px;gap:8px;margin:0 auto 23px}
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{width:100%;height:64px;min-height:64px;min-width:0;padding:6px 7px 6px 10px;gap:5px;font-size:.72rem}
 .hero-top-actions .location-pill svg{width:15px;height:15px}
 .hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:29px;height:29px;font-size:.9rem}
 .hero-top-actions .location-pill>span:not(.location-arrow){white-space:normal;line-height:1.13}
 .hero-top-actions .hero-contact>span:first-child{line-height:1.22}
 .hero-actions{width:100%;justify-content:center}
 .hero-actions .hero-explore{min-width:225px;max-width:100%;min-height:49px}
}
@media(max-width:360px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{font-size:.67rem;padding-left:8px;gap:4px}
 .hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:27px;height:27px}
}
@media(prefers-reduced-motion:reduce){.hero-top-actions .location-pill,.hero-top-actions .hero-contact,.hero-top-actions .location-arrow{transition:none!important}}
.hero-top-actions .location-pill{position:relative;isolation:isolate;overflow:hidden}
.hero-top-actions .location-pill::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.7) 48%,transparent 78%);transform:translateX(-130%);transition:transform .75s ease}
.hero-top-actions .location-pill:hover::before,.hero-top-actions .location-pill:focus-visible::before{transform:translateX(130%)}
@media(prefers-reduced-motion:reduce){.hero-top-actions .location-pill::before{transition:none!important}}

/* Short, single-line labels share the location pill's optical centre in every language. */
.hero-top-actions .location-pill,.hero-top-actions .hero-contact{align-items:center;line-height:1.15}
.hero-top-actions .location-pill>span:not(.location-arrow),.hero-top-actions .hero-contact>span:first-child{display:block;white-space:nowrap;overflow-wrap:normal;line-height:1.15;text-align:left}
.hero-top-actions .hero-contact>span:first-child{flex:1}
.hero-top-actions .hero-contact-icon,.hero-top-actions .location-arrow{align-self:center}
@media(max-width:699px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{height:58px;min-height:58px}
 .hero-top-actions .hero-contact{font-size:.7rem}
}
@media(max-width:360px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{font-size:.64rem;padding-inline:6px;gap:3px}
 .hero-top-actions .location-pill>span:not(.location-arrow){letter-spacing:-.018em}
 .hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:25px;height:25px}
}
@media(max-width:330px){.hero-top-actions .location-pill>span:not(.location-arrow){white-space:normal}}
/* Two balanced vector glyphs sit on one calm glass lens in both themes. */
.theme-button{display:grid;place-items:center;padding:0;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(214,241,250,.72));box-shadow:inset 0 1px 0 rgba(255,255,255,.94),0 7px 18px rgba(33,112,150,.12)}
.theme-button::before{inset:4px;border-radius:50%;background:radial-gradient(circle at 29% 24%,rgba(255,255,255,.88),transparent 54%);box-shadow:none}
.theme-button::after{display:none}
.theme-icon{display:grid;place-items:center;width:24px;height:24px;line-height:1;transform:none}
.theme-icon svg{inset:1px;width:22px;height:22px;stroke-linecap:round;stroke-linejoin:round;transform-origin:50% 50%}
.theme-icon .moon-icon{transform:scale(1.06)}
body[data-theme=dark] .theme-button{background:linear-gradient(145deg,rgba(67,111,146,.67),rgba(19,50,80,.84));box-shadow:inset 0 1px rgba(225,245,255,.19),0 8px 22px rgba(0,10,28,.24)}
body[data-theme=dark] .theme-button::before{background:radial-gradient(circle at 30% 22%,rgba(180,225,248,.16),transparent 53%);box-shadow:none}
body[data-theme=dark] .theme-icon .sun-icon{transform:rotate(0) scale(1)}
@media(max-width:699px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{padding-inline:8px 6px;gap:4px}
 .hero-top-actions .hero-contact{font-size:.68rem}
 .hero-top-actions .location-pill svg{width:14px;height:14px}
 .hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:26px;height:26px}
}
@media(max-width:360px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{padding-inline:6px;gap:3px;font-size:.64rem}
 .hero-top-actions .location-arrow,.hero-top-actions .hero-contact-icon{width:25px;height:25px}
}

/* Symmetric icon tracks keep the label at the geometric centre, including RTL labels. */
.hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact,.hero-actions .hero-explore{display:grid;grid-template-columns:26px minmax(0,1fr) 26px;align-items:center;column-gap:0;padding-inline:6px}
.hero-top-actions .location-pill svg{grid-column:1;justify-self:center}
.hero-top-actions .location-pill .location-arrow,.hero-top-actions .hero-contact .hero-contact-icon,.hero-explore .hero-contact-icon{grid-column:3;justify-self:center;width:26px;height:26px}
.hero-top-actions .hero-contact .hero-start-spacer,.hero-explore .hero-start-spacer{grid-column:1;width:26px;height:1px;pointer-events:none;flex:none}
.hero-top-actions .location-pill>span:not(.location-arrow),.hero-top-actions .hero-contact [data-i18n],.hero-explore [data-i18n]{grid-column:2;min-width:0;width:100%;line-height:1.18;text-align:center!important;white-space:nowrap;overflow-wrap:normal;unicode-bidi:isolate}
.hero-top-actions .hero-contact .hero-start-spacer{flex:none}
.hero-actions .hero-explore{min-width:min(250px,100%);min-height:55px}
@media(max-width:699px){
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{height:58px;min-height:58px;padding-inline:6px}
 .hero-top-actions .hero-contact{font-size:.66rem}
 .hero-actions .hero-explore{min-height:58px;font-size:.8rem}
 html[lang=hi] .hero-top-actions .hero-contact{font-size:.6rem}
}
@media(max-width:360px){
 .hero-top-actions .location-pill .location-arrow,.hero-top-actions .hero-contact .hero-contact-icon{width:25px;height:25px}
}
@media(max-width:335px){
 .hero-top-actions{grid-template-columns:1fr;max-width:260px;gap:9px}
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{font-size:.75rem}
 html[lang=hi] .hero-top-actions .hero-contact{font-size:.72rem}
}

/* Readable type and tighter glass capsules: matching icon tracks keep every label centred. */
.hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact,.hero-actions .hero-explore{grid-template-columns:22px minmax(0,1fr) 22px;padding-inline:6px}
.hero-top-actions .location-pill .location-arrow,.hero-top-actions .hero-contact .hero-contact-icon,.hero-explore .hero-contact-icon,.hero-top-actions .hero-contact .hero-start-spacer,.hero-explore .hero-start-spacer{width:22px}
.hero-top-actions .location-pill .location-arrow,.hero-top-actions .hero-contact .hero-contact-icon,.hero-explore .hero-contact-icon{height:22px;font-size:.86rem}
.hero-top-actions .location-pill svg{width:15px;height:15px}
.hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{min-height:50px;height:50px}
.hero-copy .hero-top-actions .location-pill{font-size:.78rem}
.hero-top-actions .hero-contact{font-size:.84rem}
.hero-actions .hero-explore{width:min(100%,250px);min-width:0;min-height:52px;font-size:.9rem}
@media(max-width:699px){
 .hero-top-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:6px;margin-bottom:18px}
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact{height:48px;min-height:48px;padding-inline:5px}
 .hero-copy .hero-top-actions .location-pill{font-size:.7rem}
 .hero-top-actions .hero-contact{font-size:.74rem}
 html[lang=hi] .hero-top-actions .hero-contact{font-size:.7rem}
 .hero-actions .hero-explore{width:min(100%,238px);min-height:51px;font-size:.88rem}
}
@media(max-width:360px){
 .hero-copy .hero-top-actions .location-pill{font-size:.66rem}
 .hero-top-actions .hero-contact{font-size:.7rem}
 html[lang=hi] .hero-top-actions .hero-contact{font-size:.64rem}
}
@media(max-width:335px){
 .hero-top-actions{grid-template-columns:1fr;max-width:255px}
 .hero-copy .hero-top-actions .location-pill,.hero-top-actions .hero-contact,html[lang=hi] .hero-top-actions .hero-contact{font-size:.82rem}
}
/* Visible, quiet line icons balance the arrow on the other side of each glass button. */
.hero-top-actions .hero-contact .hero-start-spacer,.hero-explore .hero-start-spacer{display:grid;place-items:center;height:22px;opacity:.86}
.hero-start-spacer svg{display:block;width:16px;height:16px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body[data-theme=dark] .hero-start-spacer svg{stroke:#91d9f2}

/* A compact liquid-glass brand lens replaces the oversized empty monogram scene. */
.story{gap:clamp(20px,4vw,48px)}
.story-visual{
  width:100%;max-width:440px;height:350px;min-width:0;isolation:isolate;
  margin-inline:auto;direction:ltr;
  background:radial-gradient(ellipse 48% 44% at 50% 48%,rgba(98,192,223,.18),transparent 100%);
}
.story-visual::before{
  content:"";position:absolute;z-index:-1;left:50%;top:50%;width:min(82%,320px);aspect-ratio:1;
  border-radius:50%;background:linear-gradient(130deg,rgba(118,206,230,.25),rgba(238,172,210,.18));
  filter:blur(32px);transform:translate(-50%,-50%);pointer-events:none;
}
.story-ring{
  position:relative;overflow:hidden;width:286px;height:286px;
  border:1px solid rgba(132,203,226,.49);background:
    radial-gradient(circle at 27% 19%,rgba(255,255,255,.72),transparent 35%),
    radial-gradient(circle at 75% 77%,rgba(245,174,212,.2),transparent 45%),
    linear-gradient(145deg,rgba(233,250,255,.5),rgba(208,237,249,.16) 57%,rgba(247,221,237,.34));
  box-shadow:inset 0 2px 5px rgba(255,255,255,.83),inset 0 -14px 28px rgba(89,171,209,.11),0 0 0 7px rgba(70,172,212,.14),0 0 0 18px rgba(184,216,236,.13),0 16px 44px rgba(47,140,178,.18);
  backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  animation:story-lens-float 8s ease-in-out infinite;
}
.story-ring::before{
  content:"";position:absolute;inset:-30% auto -30% -35%;width:45%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);
  filter:blur(10px);transform:translateX(-220%) rotate(14deg);
  animation:story-lens-light 10s ease-in-out infinite;pointer-events:none;
}
.story-ring::after{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(255,255,255,.3);pointer-events:none}
.story-city{position:absolute;z-index:1;left:4%;bottom:9%;width:92%;height:auto;color:#3f93b2;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;opacity:.44;pointer-events:none}
.story-monogram{
  position:absolute;z-index:2;left:50%;top:50%;width:min(84%,230px);
  padding-inline:.1em;text-align:center;font-size:10rem;line-height:1.06;letter-spacing:0;
  transform:translate(-50%,-57%);
  background:linear-gradient(132deg,#288aae 12%,#8cc7d9 48%,#c798c0 90%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 7px 11px rgba(49,144,183,.15));
}
.story-signature{
  position:absolute;z-index:2;left:50%;bottom:6%;transform:translateX(-50%);
  display:flex;align-items:center;justify-content:center;min-height:32px;padding:5px 16px;
  border:1px solid rgba(255,255,255,.9);border-radius:999px;
  background:linear-gradient(110deg,rgba(245,253,255,.91),rgba(240,237,248,.8));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 6px 20px rgba(49,137,174,.12);
  color:var(--ink);font-size:.68rem;font-weight:700;letter-spacing:.025em;white-space:nowrap;
}
body[data-theme=dark] .story-visual{background:radial-gradient(ellipse 48% 44% at 50% 48%,rgba(50,135,181,.16),transparent 100%)}
body[data-theme=dark] .story-visual::before{background:linear-gradient(130deg,rgba(47,144,192,.2),rgba(139,99,170,.16))}
body[data-theme=dark] .story-ring{
  border-color:rgba(158,218,239,.35);
  background:radial-gradient(circle at 25% 18%,rgba(194,235,252,.13),transparent 38%),radial-gradient(circle at 75% 78%,rgba(178,124,204,.13),transparent 48%),linear-gradient(145deg,rgba(34,83,112,.54),rgba(16,43,71,.43) 62%,rgba(70,51,89,.44));
  box-shadow:inset 0 2px 4px rgba(208,241,255,.12),inset 0 -16px 32px rgba(5,21,42,.22),0 0 0 7px rgba(91,177,221,.12),0 0 0 18px rgba(106,118,194,.09),0 20px 44px rgba(0,8,24,.25);
}
body[data-theme=dark] .story-ring::before{background:linear-gradient(90deg,transparent,rgba(177,229,250,.22),transparent)}
body[data-theme=dark] .story-ring::after{border-color:rgba(200,234,250,.12)}
body[data-theme=dark] .story-city{color:#a3d5ea;opacity:.32}
body[data-theme=dark] .story-monogram{background:linear-gradient(130deg,#7ac8e5 12%,#b7d7ed 48%,#c596ce 90%);-webkit-background-clip:text;background-clip:text}
body[data-theme=dark] .story-signature{background:linear-gradient(110deg,rgba(34,79,106,.92),rgba(59,50,83,.85));border-color:rgba(172,218,238,.25);box-shadow:inset 0 1px rgba(226,247,255,.12),0 7px 19px rgba(0,7,24,.2)}
@keyframes story-lens-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes story-lens-light{0%,45%{transform:translateX(-220%) rotate(14deg)}65%,100%{transform:translateX(430%) rotate(14deg)}}
@media(max-width:699px){
  .visual-showcase{padding-bottom:44px}
  .story{padding-block:20px 72px;gap:18px}
  .story-visual{height:258px;max-width:100%}
  .story-ring{width:214px;height:214px}
  .story-monogram{font-size:7.7rem;width:min(82%,174px)}
  .story-signature{bottom:4%;font-size:.64rem;min-height:30px}
}
@media(prefers-reduced-motion:reduce){.story-ring,.story-ring::before{animation:none!important}}

/* Decorative artwork never behaves like selectable text on a long touch. */
.story-visual,.story-visual *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.story-visual{pointer-events:none;-webkit-tap-highlight-color:transparent}
.story-bubble{
  position:absolute;z-index:2;display:block;width:51px;aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(53,155,199,.68);
  background:radial-gradient(circle at 29% 22%,rgba(255,255,255,.97) 0 5%,transparent 17%),
    radial-gradient(circle at 74% 76%,rgba(237,144,199,.42),transparent 48%),
    radial-gradient(circle at 25% 77%,rgba(74,181,222,.42),transparent 49%),
    radial-gradient(circle at 48% 42%,rgba(255,255,255,.06) 39%,rgba(145,215,237,.36) 84%,rgba(255,255,255,.85));
  box-shadow:inset 3px 4px 8px rgba(255,255,255,.87),inset -4px -6px 11px rgba(48,147,195,.24),0 8px 19px rgba(48,134,184,.19);
  opacity:.95;animation:story-bubble-drift 8.5s ease-in-out infinite;
}
.story-bubble-one{right:9%;top:18%}
.story-bubble-two{left:11%;bottom:17%;width:32px;animation-delay:-3.5s;animation-duration:10s}
body[data-theme=dark] .story-bubble{border-color:rgba(151,221,250,.6);box-shadow:inset 3px 4px 9px rgba(220,242,255,.35),inset -4px -6px 12px rgba(77,156,209,.25),0 0 15px rgba(106,204,244,.2)}
@keyframes story-bubble-drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(4px,-8px,0)}}
@media(max-width:699px){.story-copy .eyebrow{display:block;width:100%;margin-inline:auto;text-align:center}}
@media(prefers-reduced-motion:reduce){.story-bubble{animation:none!important}}
@media(max-width:699px){.feature-detergent .feature-number{display:block;width:100%;text-align:center;letter-spacing:.07em}}

/* Four clear contact routes: recognisable vector marks and a longer colour fade. */
.contact-bar{
  min-height:72px;gap:14px;padding:10px 16px 10px 11px;border-radius:24px;
  background:linear-gradient(90deg,var(--service-tint) 0%,var(--service-tint) 15%,var(--service-soft) 76%,var(--glass) 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.74),0 12px 29px rgba(24,89,125,.1);
}
.contact-bar.whatsapp{--service-tint:rgba(35,194,112,.41);--service-soft:rgba(57,193,145,.17)}
.contact-bar.telegram{--service-tint:rgba(31,154,218,.4);--service-soft:rgba(81,182,226,.16)}
.contact-bar.viber{--service-tint:rgba(138,101,211,.4);--service-soft:rgba(166,136,219,.16)}
.contact-bar.phone{--service-tint:rgba(31,158,204,.38);--service-soft:rgba(84,178,211,.15)}
.contact-icon{
  width:47px;height:47px;flex:none;border-radius:16px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--service-color) 84%,#fff),var(--service-color));
  box-shadow:inset 0 1px 1px rgba(255,255,255,.42),0 5px 14px rgba(21,86,123,.17);
  transition:transform .28s ease,box-shadow .28s ease;
}
.contact-icon img{display:block;width:28px;height:28px;pointer-events:none}
.contact-bar>span:nth-child(2){font-size:clamp(1rem,3vw,1.15rem);letter-spacing:-.018em}
.contact-arrow{
  display:grid;place-items:center;flex:none;margin-inline-start:auto;width:32px;height:32px;
  border:1px solid rgba(255,255,255,.48);border-radius:50%;
  background:rgba(255,255,255,.22);font-size:1.04rem;line-height:1;
  transition:transform .28s ease,background .28s ease;
}
.contact-bar:hover .contact-icon,.contact-bar:focus-visible .contact-icon{transform:translateY(-2px) scale(1.05);box-shadow:inset 0 1px rgba(255,255,255,.5),0 8px 18px rgba(17,81,115,.21)}
.contact-bar:hover .contact-arrow,.contact-bar:focus-visible .contact-arrow{transform:translate(2px,-2px);background:rgba(255,255,255,.4)}
.contact-bar:active .contact-icon{transform:scale(.96)}
body[data-theme=dark] .contact-bar{border-color:rgba(173,221,241,.25);box-shadow:inset 0 1px rgba(210,242,255,.13),0 13px 30px rgba(0,8,23,.28)}
body[data-theme=dark] .contact-bar.whatsapp{--service-tint:rgba(22,132,91,.55);--service-soft:rgba(39,112,111,.27)}
body[data-theme=dark] .contact-bar.telegram{--service-tint:rgba(26,111,176,.56);--service-soft:rgba(49,105,150,.27)}
body[data-theme=dark] .contact-bar.viber{--service-tint:rgba(99,71,172,.56);--service-soft:rgba(99,78,146,.26)}
body[data-theme=dark] .contact-bar.phone{--service-tint:rgba(18,104,157,.55);--service-soft:rgba(45,104,144,.27)}
body[data-theme=dark] .contact-arrow{background:rgba(205,232,248,.09);border-color:rgba(208,238,251,.18)}
@media(max-width:380px){.contact-bar{gap:10px;padding-right:11px}.contact-icon{width:44px;height:44px}.contact-arrow{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.contact-icon,.contact-arrow{transition:none!important}}

/* Phone and address form a single, readable location detail beneath the map. */
.location-panel .phone-line{
  align-items:center;min-height:68px;margin-top:22px;padding-bottom:18px;
  border-bottom:1px solid var(--line);color:var(--ink);
}
.location-panel .address-line:not(.phone-line){align-items:center;margin-top:18px}
.location-panel .phone-line strong{white-space:nowrap}
.location-panel .phone-line .detail-arrow,
.location-panel .address-line:not(.phone-line)>a{
  display:grid;place-items:center;flex:none;width:44px;height:44px;
  border:1px solid var(--line);border-radius:50%;
  background:rgba(255,255,255,.16);box-shadow:inset 0 1px rgba(255,255,255,.42);
  font-size:1.3rem;line-height:1;transition:transform .25s ease,background .25s ease;
}
.location-panel .phone-line:hover .detail-arrow,
.location-panel .phone-line:focus-visible .detail-arrow,
.location-panel .address-line:not(.phone-line)>a:hover,
.location-panel .address-line:not(.phone-line)>a:focus-visible{
  transform:translate(2px,-2px);background:rgba(112,194,226,.2);
}
body[data-theme=dark] .location-panel .phone-line .detail-arrow,
body[data-theme=dark] .location-panel .address-line:not(.phone-line)>a{background:rgba(126,196,225,.09)}

/* Body copy stays legible over the water-light background in every script. */
:root{--muted:#405b69}
body[data-theme=dark]{--muted:#b7cedb}
.hero-description,
.section-heading p:last-child,
.story-copy p:not(.eyebrow),
.collection-intro p:not(.eyebrow),
.feature-copy p,
.sponge-intro p:not(.eyebrow),
.films-head p:not(.eyebrow),
.audience-columns p,
.contact-intro p:not(.eyebrow){
  color:var(--muted);
  font-size:1.04rem;
  font-weight:500;
  line-height:1.78;
}
.gallery-head>span,.hero-bottom,.feature-caption,.footer-bottom{
  color:var(--muted);
  font-weight:500;
}
.footer-bottom{font-size:.8rem;line-height:1.65}
@media(max-width:699px){
  .hero-description,
  .section-heading p:last-child,
  .story-copy p:not(.eyebrow),
  .collection-intro p:not(.eyebrow),
  .feature-copy p,
  .sponge-intro p:not(.eyebrow),
  .films-head p:not(.eyebrow),
  .audience-columns p,
  .contact-intro p:not(.eyebrow){font-size:1.025rem;line-height:1.76}
}
@media(max-width:380px){.location-panel .address-line strong{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.location-panel .detail-arrow,.location-panel .address-line:not(.phone-line)>a{transition:none!important}}

/* Center only the two section titles shown below the product photos on phones. */
@media(max-width:699px){
  .story-copy h2,.feature-detergent .feature-copy h2{text-align:center}
}

/* Fit each photograph to its own proportions so glass framing does not create colour bars. */
.editorial-grid .image-shell img,
.feature-image img,
.gallery-slide img,
.stack-image img{
  -webkit-mask-image:none;
  mask-image:none;
  object-fit:contain;
}
.editorial-grid .editorial-main,
.editorial-grid .editorial-small,
.editorial-grid .editorial-tall{
  height:auto;
  margin:0;
}
.editorial-grid .editorial-main,.editorial-grid .editorial-tall{aspect-ratio:2/3}
.editorial-grid .editorial-small{aspect-ratio:1312/1199}
.editorial-grid .image-shell img,.feature-image img{
  position:absolute;inset:0;width:100%;height:100%;max-height:none;
}
.feature-image{aspect-ratio:1312/1199}
.gallery-slide{
  height:auto;max-height:none;aspect-ratio:2/3;
}
.gallery-slide:nth-child(2){aspect-ratio:1312/1199;flex-basis:clamp(290px,88vw,420px)}
.stack-images{height:auto;aspect-ratio:1312/1199}
.image-shell,.gallery-slide,.stack-image{
  border-color:rgba(255,255,255,.56);
  box-shadow:0 13px 34px var(--scene-depth);
}
.image-shell::after,.gallery-slide::after,.stack-image::after{
  background:linear-gradient(125deg,rgba(255,255,255,.13),transparent 30%,transparent 77%,rgba(255,255,255,.08));
  box-shadow:inset 0 1px rgba(255,255,255,.36);
}
body[data-theme=dark] .image-shell,
body[data-theme=dark] .gallery-slide,
body[data-theme=dark] .stack-image{border-color:rgba(163,216,238,.18)}

/* The first film is a 16:9 video; match its frame without changing the second film. */
.film-primary{border:0;background:none}
.film-primary::before,.film-primary::after{display:none}
.film-primary video{aspect-ratio:16/9;object-fit:cover;border-radius:inherit}
body[data-theme=dark] .film-primary{background:none;border:0}

/* Match the frame to the panoramic hero artwork, and fill it in both themes. */
.hero-art-frame{aspect-ratio:2.02}

/* The portrait film and its frame share the native 9:16 proportions. */
.film-secondary{aspect-ratio:9/16}
.film-secondary::before{display:none}
.film-secondary video{width:100%;height:100%;aspect-ratio:9/16;object-fit:cover}

/* Keep the still glass artwork, but avoid repainting large blurred layers on touch screens. */
@media (max-width:699px), (pointer:coarse){
  .ambient::before,
  .ambient-orb,
  .hero-brand,
  .hero-art-frame,
  .hero-art-frame::after,
  .story-ring,
  .story-ring::before,
  .gallery-slide.active::after{animation:none!important}
  .reveal{filter:none!important;transition:opacity .46s ease,transform .46s ease!important}
  .image-shell.reveal img{transition:opacity .46s ease,transform .46s ease!important}
  .story-ring{backdrop-filter:none;-webkit-backdrop-filter:none}
  .header-panel.language-list,.header-panel.mobile-nav{
    backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);
    clip-path:none!important;
    transition:opacity .24s ease,transform .24s ease!important;
  }
  body.theme-reveal::before{display:none}
}
