/*
Theme Name: Favorit Pools
Theme URI: https://supp4.website-dev.com.ua/
Author: Favorit
Description: Індивідуальна тема Favorit: інтерактивна конструкція басейну, моделі, проєкти та анімація води.
Version: 1.2.2
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: favorit-pools
License: GPL-2.0-or-later
*/
/* Local Favorit concept. Reading text and controls start at 16px. */
:root{--ink:#063b67;--deep:#052e50;--blue:#087fc9;--cyan:#5bc9ff;--ice:#e8f7ff;--paper:#f7fbfe;--line:#bad7e8;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans);overflow-x:clip}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0;background:none}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.05;letter-spacing:-.055em}h2{font-size:clamp(42px,5.2vw,78px);font-weight:600}h2 em{font-style:normal;color:#1686c4}small{font-size:16px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #086ec1;outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:0;left:16px;z-index:100;background:white;padding:16px;transform:translateY(-120%)}.skip:focus{transform:none}.water-progress{position:fixed;right:0;top:0;width:5px;height:100vh;z-index:80;pointer-events:none}.water-progress i{display:block;height:0;background:#009be6;box-shadow:0 0 20px #4cceff}.header{position:absolute;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;gap:35px;justify-content:space-between;padding:32px 4.5%}.brand{width:174px;flex-shrink:0}.brand img{width:100%;height:auto}.desktop-nav{display:flex;gap:27px}.desktop-nav a{position:relative;padding:8px 0;font-weight:600}.desktop-nav a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-phone{border:1px solid #6fabc8;border-radius:40px;padding:13px 20px;font-weight:700;white-space:nowrap;background:#e5f7ff80;transition:background .25s}.header-phone:hover{background:white}.header-phone span{margin-left:12px}.menu-toggle{display:none}.mobile-nav{position:absolute;top:90px;left:16px;right:16px;z-index:40;background:white;padding:20px;border-radius:20px;box-shadow:0 20px 60px #03345b25}.mobile-nav a,.mobile-nav button{display:block;padding:13px 8px;width:100%;text-align:left}
.pool-poster{position:relative;min-height:940px;height:min(1060px,100svh);isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 74% 55%,#e7faff 0,#bbe8ff 48%,#9edaff 100%);padding:130px 4.5% 30px;border-radius:0 0 70px 70px}.pool-poster canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.6}.hero-kicker{display:flex;justify-content:space-between;position:relative;z-index:2;padding-bottom:20px;gap:20px}.hero-kicker>span:first-child{display:flex;align-items:center;gap:10px}.hero-kicker i{width:9px;height:9px;background:#0983c6;border-radius:50%}.pool-poster h1{position:relative;font-size:clamp(100px,16.2vw,256px);line-height:.91;letter-spacing:-.065em;font-weight:800;color:#0763a2;z-index:0;width:max-content;max-width:100%;transform:translateX(-.012em);pointer-events:none}.pool-object{position:absolute;z-index:2;width:76%;right:-1%;top:24%;transform:translate3d(var(--pool-x,0px),var(--pool-y,0px),0) rotate(var(--pool-r,0deg));will-change:transform;pointer-events:none}.pool-object img{width:100%;height:auto;filter:drop-shadow(0 30px 25px #14598a20)}.orbit{position:absolute;border:1px solid #ffffff85;pointer-events:none;z-index:-1;width:82%;height:54%;right:-8%;top:29%;border-radius:50%;transform:rotate(-25deg)}.orbit-two{width:94%;height:70%;top:20%;right:-14%;border-color:#ffffff60}.hero-copy{position:relative;z-index:3;margin-top:120px;max-width:360px}.hero-copy p{font-size:clamp(25px,2.2vw,34px);line-height:1.28;letter-spacing:-.035em;font-weight:500}.hero-copy p strong{font-weight:700}.round-link{width:155px;height:155px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:700;line-height:1.4;background:var(--deep);color:white;position:relative;isolation:isolate;overflow:hidden;transition:transform .45s,background .45s;gap:5px;margin-top:28px}.round-link b{font-size:30px;font-weight:400;line-height:1}.round-link:before,.button:before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--hx,50%) var(--hy,50%),#69cfff77,transparent 65%);opacity:0;transition:opacity .35s;z-index:-1}.round-link:hover{transform:translateY(-5px) rotate(-5deg);background:#0b5c94}.round-link:hover:before,.button:hover:before{opacity:1}.hero-tag{position:absolute;right:5%;bottom:145px;z-index:4;display:flex;align-items:center;gap:18px;line-height:1.5}.tag-line{width:75px;height:1px;background:#327da4;position:relative}.tag-line:before{content:'';position:absolute;left:-4px;top:-4px;width:9px;height:9px;border:1px solid #327da4;background:#c2edff;border-radius:50%}.hero-foot{position:absolute;left:4.5%;right:4.5%;bottom:27px;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:5}.hero-foot>a{display:flex;align-items:center;gap:16px}.hero-foot>span{color:#356a8a}.drop-icon{display:grid;place-content:center;width:40px;height:50px;border:1px solid #71accd;border-radius:50% 50% 45% 45%;font-size:24px}.hero-foot a:hover .drop-icon{background:white}
.section{padding:110px 5%}.section-intro{display:grid;grid-template-columns:.8fr 1.6fr 1fr;align-items:end;gap:35px;margin-bottom:55px}.section-index{align-self:start;display:block;font-weight:600}.section-intro>p{max-width:350px;line-height:1.7}.section-intro>.text-link{align-self:end}.eyebrow{font-size:16px;font-weight:500;display:block}.collection{padding-top:100px}.model-studio{background:var(--deep);color:white;border-radius:35px;padding:32px;position:relative}.model-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-bottom:35px}.model-tabs button{display:grid;grid-template-columns:1fr auto;text-align:left;color:#91c0db;border-bottom:1px solid #62839b;padding:5px 8px 22px;position:relative;transition:color .35s}.model-tabs button>span{font-size:clamp(42px,4.8vw,72px);font-weight:500;line-height:1.2;letter-spacing:-.06em;grid-column:1}.model-tabs button small{font-size:20px;letter-spacing:0}.model-tabs button b{font-size:16px;font-weight:500;grid-column:1;margin-top:9px}.model-tabs button i{font-size:35px;font-style:normal;grid-column:2;grid-row:1/3;align-self:center}.model-tabs button:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:#73d5ff;transform:scaleX(0);transform-origin:left;transition:transform .45s}.model-tabs button[aria-selected=true]{color:white}.model-tabs button[aria-selected=true]:after,.model-tabs button:hover:after{transform:scaleX(1)}.model-tabs button:hover{color:#b9eaff}.model-panel{display:grid;grid-template-columns:1.35fr 1fr;gap:44px;align-items:center}.model-photo{position:relative;align-self:stretch;min-height:440px;border-radius:18px 90px 18px 18px;overflow:hidden;background:#295c7c}.model-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .8s}.model-photo:hover img{transform:scale(1.035)}.model-photo figcaption{position:absolute;left:20px;bottom:20px;right:20px;background:#032a45c9;border-radius:10px;padding:9px 14px;width:fit-content;max-width:calc(100% - 40px)}.photo-corner{position:absolute;right:20px;top:20px;font-size:32px;color:white}.model-info{padding:12px 10px 12px 0}.model-info>.eyebrow{color:#a5d8ef}.model-info h3{font-size:55px;font-weight:600;margin:17px 0 18px}.model-info>p{line-height:1.7;min-height:82px;max-width:440px;color:#d0e6f2}.specs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid #5a7f98;padding-top:20px;margin:20px 0 28px}.specs dt{color:#a5cfe5;margin-bottom:5px}.specs dd{margin:0;font-size:34px;letter-spacing:-.05em;white-space:nowrap}.specs dd small{font-size:16px;letter-spacing:0}.button{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#a7e4ff;color:var(--deep);padding:18px 23px;border-radius:50px;font-size:16px;font-weight:700;min-height:58px;overflow:hidden;transition:background .25s,transform .25s}.button>span{font-size:24px}.button:hover{background:white;transform:translateY(-2px)}.model-info .button{width:100%}.text-link{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid currentColor;padding:5px 0;font-weight:600;transition:color .25s}.model-info>.text-link{margin-top:20px;color:#d4f2ff}.text-link:hover{color:#159bdc}.catalog-link{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:40px;margin:30px 18px 0;padding-bottom:18px;border-bottom:1px solid #b5d7e8}.catalog-link strong{font-size:23px;font-weight:600}.catalog-link b{font-size:35px;font-weight:400;transition:transform .3s}.catalog-link:hover b{transform:translate(5px,-5px)}
.technology{background:linear-gradient(150deg,#e5f6ff,#d7efff 60%,#ecf9ff);border-radius:65px 65px 0 0;padding-bottom:60px;position:relative}.technology:before{content:'';height:100px;width:100px;position:absolute;top:18px;right:5%;border-radius:50%;border:1px solid #95cce8;box-shadow:0 0 0 14px #d3eeff,0 0 0 15px #add8ee;opacity:.45;pointer-events:none}.tech-workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.tech-stage{min-width:0;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #a1cde3;border-radius:28px;background:#f5fbff80;overflow:hidden}.stage-top{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:20px 25px;flex-wrap:wrap}.stage-top>span:first-child{display:flex;align-items:center;gap:9px}.stage-top>span:last-child{font-size:16px;color:#4b7590}.stage-top>button{border-radius:25px;background:#d9f2ff;padding:8px 13px;font-size:16px}.stage-top>button[aria-pressed=true]{background:var(--ink);color:white}.live-dot{width:8px;height:8px;border-radius:50%;background:#0298db}.tech-stage svg{display:block;width:100%;height:auto;flex:1;min-height:0;max-height:670px}.component{cursor:pointer;transition:opacity .3s;outline:none}.component.dimmed{opacity:.2}.component.active .sheet-outline,.component:focus-visible .sheet-outline{stroke:#008fe3;stroke-width:3}.pin{cursor:pointer}.pin circle{fill:white;stroke:#79b4d4;stroke-width:1.5}.pin text{font:700 22px var(--sans);text-anchor:middle;dominant-baseline:central;fill:#174f76}.pin.active circle{fill:var(--blue);stroke:white}.pin.active text{fill:white}.axis text{font:16px var(--sans);fill:#3c7ba0}.assembly-toolbar{display:flex;gap:14px;align-items:center;padding:18px 22px 0;flex-wrap:wrap}.assembly-toolbar .button{background:var(--ink);color:white;flex:1;min-width:200px}.assembly-range-label{display:flex;align-items:center;gap:12px;flex:1;min-width:260px}.assembly-range-label input{min-width:30px;width:100%;accent-color:#008bce;cursor:ew-resize;height:40px}.icon-button{width:56px;height:56px;border:1px solid #8cbdd6;border-radius:50%;flex-shrink:0;font-size:22px}.icon-button:hover{background:white}.diagram-note{font-size:16px;color:#3f6c87;padding:20px 24px;line-height:1.6}.tech-info{display:flex;flex-direction:column;gap:20px;min-width:0}.active-layer{padding:25px;background:#075286;color:white;border-radius:28px;min-height:270px;position:relative;overflow:hidden}.active-layer:after{content:'';position:absolute;width:160px;height:160px;border:1px solid #ffffff15;border-radius:50%;right:-40px;top:-40px;box-shadow:0 0 0 18px #ffffff06}.active-layer-number{font-size:44px;line-height:1;color:#8edcff;margin-bottom:15px;letter-spacing:-.06em}.active-layer h3{font-size:28px;margin:12px 0 16px;letter-spacing:-.04em}.active-layer .eyebrow{color:#a8d7ee}.active-layer p{font-size:16px;line-height:1.65;color:#e3f3ff}.layer-list{display:grid;gap:0}.layer-list button{display:grid;grid-template-columns:45px 1fr 18px;text-align:left;align-items:center;gap:10px;padding:12px 8px;border-bottom:1px solid #b0d1e3;font-size:16px;line-height:1.45;transition:background .3s,padding .3s}.layer-list button span:first-child{color:#446f8a}.layer-list button span:last-child{transition:transform .25s}.layer-list button:hover,.layer-list button.active{background:#b9e6fc;padding-left:14px}.layer-list button:hover span:last-child{transform:translate(2px,-2px)}.finish-bar{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:40px}.finish-bar h3{font-size:32px;margin:8px 0 12px}.finish-bar p{color:#49748b}.swatch-list{display:flex;gap:20px}.swatch-list button{position:relative;width:128px;text-align:left;padding:0;font-size:16px;font-weight:600}.swatch{display:block;height:73px;border-radius:50% 50% 12px 12px;margin-bottom:12px;position:relative;box-shadow:inset 0 0 0 1px #33587530;transition:transform .3s,box-shadow .3s;background-color:var(--swatch);background-image:radial-gradient(circle at 23% 35%,#fff9 0 1px,transparent 2px),radial-gradient(circle at 75% 77%,#003c6255 0 1px,transparent 1.5px),radial-gradient(circle at 60% 13%,#ffffff88 0 1.5px,transparent 2px);background-size:13px 17px,19px 11px,23px 29px}.sapphire{--swatch:#39b6ed}.brilliant{--swatch:#ccd6cc}.platinum{--swatch:#9daeb8}.onyx{--swatch:#e1d7bd}.swatch-list i{display:none;position:absolute;right:8px;top:35px;color:white;background:var(--ink);border-radius:50%;width:26px;height:26px;text-align:center;font-style:normal}.swatch-list button[aria-pressed=true] i{display:block}.swatch-list button[aria-pressed=true] .swatch{box-shadow:0 0 0 3px #208fc3,0 0 0 7px #edfaff;transform:translateY(-3px)}.swatch-list button:hover .swatch{transform:translateY(-6px)}
.installation{background:#d9f0ff;padding-top:90px;border-radius:0 0 60px 60px;overflow:hidden}.installation-head{display:grid;grid-template-columns:.7fr 1.7fr 1fr;align-items:end;gap:30px;padding:0 5% 45px}.installation-head h2{font-size:clamp(40px,4.6vw,68px)}.installation-note{display:flex;align-items:center;gap:15px}.arrow-sketch{font-size:70px;line-height:1;transform:rotate(-20deg);font-weight:400}.installation-note p{line-height:1.65}.comparison{height:660px;max-height:75vh;position:relative;overflow:hidden;isolation:isolate;touch-action:pan-y;background:#50c2ed;margin:0 2.5%;border-radius:28px}.compare-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;pointer-events:none;user-select:none}.construction-mask{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-label{position:absolute;top:26px;z-index:2;background:#eaf9fff0;padding:11px 19px;border-radius:30px;font-size:16px;font-weight:700;pointer-events:none;transition:opacity .2s}.before-label{left:28px;background:#063554e8;color:white}.after-label{right:28px}.compare-divider{position:absolute;left:var(--split);top:0;bottom:0;z-index:3;width:0;pointer-events:none}.divider-line{position:absolute;inset:0;width:2px;background:white;box-shadow:0 0 8px #fff9}.drag-knob{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;background:#f0fbff;display:flex;align-items:center;justify-content:center;gap:6px;font-size:28px;box-shadow:0 0 0 12px #ffffff33,0 4px 30px #03436a35;color:var(--ink)}.drag-knob b{font-size:32px}.divider-caption{position:absolute;left:0;top:calc(50% + 65px);transform:translateX(-50%);padding:8px 15px;border-radius:30px;background:#043e60d9;color:white;font-size:16px;white-space:nowrap}.compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:5;touch-action:pan-y}.comparison:focus-within{outline:4px solid #097fc0;outline-offset:5px}.comparison-controls{padding:30px 5% 18px;display:flex;gap:30px;justify-content:space-between;align-items:center;flex-wrap:wrap}.comparison-controls p strong{display:block;font-size:20px;font-weight:600}.comparison-controls p>span{display:block;margin-top:6px}.state-switch{display:flex;border:1px solid #96c7e1;border-radius:40px;padding:5px;background:#f2faff80}.state-switch button{font-size:16px;padding:12px 22px;border-radius:30px;transition:background .3s,color .3s}.state-switch button.active{background:var(--deep);color:white}.state-switch button:hover{background:#a4d9f4}.state-switch button.active:hover{background:#095782}.state-switch button span{margin-left:6px}.play-transformation{display:flex;align-items:center;gap:12px;font-size:16px}.play-transformation>span{display:grid;place-content:center;width:42px;height:42px;border:1px solid #84b4cd;border-radius:50%}.play-transformation:hover>span{background:white}.visual-note{padding:5px 5% 35px;font-size:16px;color:#456d83}
.projects{padding-top:110px}.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:45px 70px;align-items:start}.project{padding:0;text-align:left;display:block;width:100%}.project-photo{display:block;position:relative;overflow:hidden;border-radius:25px;background:#b6d7e7}.project-main .project-photo{border-radius:120px 25px 25px 25px}.project-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.2;transition:transform 1s,filter .8s}.project-main .project-photo img{aspect-ratio:.98}.project-second{margin-top:100px}.project-third{max-width:85%;margin-left:15%}.project-third .project-photo{border-radius:25px 25px 100px 25px}.project-photo:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--hx,50%) var(--hy,50%),#c9f5ff44,transparent 55%);opacity:0;transition:opacity .4s;pointer-events:none}.project:hover .project-photo img{transform:scale(1.045);filter:saturate(1.12)}.project:hover .project-photo:after{opacity:1}.view-circle{position:absolute;left:var(--hx,65%);top:var(--hy,50%);transform:translate(-50%,-50%) scale(.8);width:110px;height:110px;border-radius:50%;display:grid;place-content:center;text-align:center;background:#e8faffee;color:var(--ink);opacity:0;transition:opacity .25s,transform .3s;font-style:normal;font-size:16px;line-height:1.5;pointer-events:none;z-index:2}.project:hover .view-circle,.project:focus-visible .view-circle{opacity:1;transform:translate(-50%,-50%) scale(1)}.project-caption{display:flex;justify-content:space-between;gap:20px;padding-top:19px;font-size:18px}.project-caption b{font-weight:600}.project-caption>span{color:#50849f;font-size:16px}.project-end{padding:70px 20px 0;max-width:370px;margin:auto}.project-end svg{width:180px;height:100px;fill:none;stroke:#49a9db;stroke-width:1.5;animation:water-sway 7s ease-in-out infinite}.project-end p{font-size:24px;line-height:1.45;margin-top:26px}.extras{padding-top:10px}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:25px}.extras-grid>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #aacce0;border-bottom:1px solid #aacce0;padding:35px 0}.extras-grid h2{font-size:36px;margin-bottom:25px;font-weight:500}.extras-grid img{width:36%;max-width:220px;mix-blend-mode:multiply;transition:transform .5s}.extras-grid a:hover img{transform:translateY(-10px) rotate(-3deg)}
.contact{position:relative;background:#064c80;color:white;border-radius:65px 65px 0 0;padding-top:45px;padding-bottom:50px;overflow:hidden;isolation:isolate}.contact-rings{position:absolute;width:650px;height:650px;right:-200px;top:-80px;border-radius:50%;border:1px solid #92cfe52b;box-shadow:0 0 0 65px #54b8f008,0 0 0 66px #92cfe520,0 0 0 132px #54b8f008,0 0 0 133px #92cfe51a;z-index:-1;transform:translateY(var(--contact-y,0px))}.contact-top{display:flex;justify-content:space-between;gap:30px;color:#b0dafa}.contact-main{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:55px 0 70px}.contact h2{font-size:clamp(48px,6.5vw,100px);font-weight:500}.contact h2 em{color:#84d6ff}.round-link.light{background:#b4e8ff;color:var(--ink);width:180px;height:180px;flex-shrink:0;margin:0}.round-link.light:hover{background:white}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px;border-top:1px solid #78c3ee4d;padding-top:28px;flex-wrap:wrap}.contact-bottom p{color:#c6e4f8}.contact-bottom>div>a{font-size:30px;letter-spacing:-.04em}.contact-bottom>div>span{display:block;color:#b6daf0;margin-top:7px}.contact-bottom>a{font-weight:600}footer{display:flex;align-items:center;gap:45px;padding:35px 5%;background:#f3faff}footer>span{margin-right:auto}footer .brand{width:150px}footer a:hover{color:#0d8dcc}
.modal-open{overflow:hidden}dialog{border:1px solid #acd1e4;border-radius:26px;background:#f2faff;color:var(--ink);padding:32px;width:min(620px,calc(100% - 32px));max-height:90dvh;overflow:auto;box-shadow:0 30px 100px #001d4160}dialog::backdrop{background:#002c4cba;backdrop-filter:blur(8px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.close-dialog{width:48px;height:48px;border:1px solid #99c2d6;border-radius:50%;font-size:32px;line-height:1;flex-shrink:0}.brief-progress{height:4px;background:#c8e4f3;margin:22px 0 28px;border-radius:3px;overflow:hidden}.brief-progress i{display:block;height:100%;background:#0999df;transition:width .4s}.brief-step h2{font-size:40px;line-height:1.1;margin:18px 0}.brief-step em{font-style:normal;color:#168bc8}.brief-step>p{font-size:16px;line-height:1.7;margin:15px 0}.brief-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.brief-options label{position:relative;cursor:pointer}.brief-options input{position:absolute;top:20px;left:15px;accent-color:#058cd2;width:16px;height:16px}.brief-options label>span{display:block;border:1px solid #abd0e3;padding:17px 15px 17px 43px;border-radius:14px;font-size:20px}.brief-options small{display:block;font-size:16px;margin-top:7px;line-height:1.5}.brief-options input:checked+span{background:#cfedff;border-color:#0f97df}.solid-button{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--ink);color:white;border-radius:40px;padding:16px 22px;font-size:16px}.brief-step>.solid-button{width:100%}.step-actions{display:flex;gap:20px;align-items:center}.step-actions>.solid-button{flex:1}.back-step{font-size:16px;padding:12px 0}.field{display:block;font-size:16px;margin:20px 0}.field input{width:100%;display:block;border:1px solid #a6cce0;border-radius:12px;background:white;padding:15px;font-size:16px;margin-top:10px}.validation{color:#a53131!important}.privacy-note{font-size:16px;display:block;margin-top:15px;color:#446b85}.brief-phone{display:block;font-size:28px;margin:25px 0;text-align:center}#brief-summary{padding:20px;border-radius:15px;background:#d7efff;line-height:1.8;margin:20px 0}#photo-dialog{width:min(1100px,calc(100% - 32px));padding:18px}#photo-dialog .close-dialog{position:absolute;right:30px;top:30px;background:white;z-index:2}#photo-dialog>img{width:100%;max-height:74vh;object-fit:contain;border-radius:15px}#photo-dialog>p{font-size:16px;padding:15px 5px 0}
.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.motion-ready .reveal.in-view{opacity:1;transform:none}@keyframes water-sway{50%{transform:translateX(14px)}}
@media(min-width:1650px){.section{padding-left:max(5%,calc((100vw - 1600px)/2));padding-right:max(5%,calc((100vw - 1600px)/2))}.pool-poster{max-height:1150px;height:1080px}.pool-object{width:70%;right:2%;top:22%}.hero-copy{margin-top:150px}.pool-poster h1{font-size:15.8vw}.hero-tag{bottom:130px}.tech-workspace{grid-template-columns:minmax(0,1fr) 380px}}
@media(max-width:1150px){.header{gap:25px;padding-inline:4%}.desktop-nav{gap:18px}.header-phone{display:none}.pool-poster{min-height:860px;height:auto;padding-top:115px}.pool-object{width:88%;right:-13%;top:27%}.hero-copy{margin-top:110px;max-width:300px}.hero-tag{right:5%;bottom:120px}.section{padding:85px 4%}.section-intro{grid-template-columns:.6fr 1.5fr 1fr;gap:24px}.model-panel{grid-template-columns:1.1fr 1fr;gap:28px}.model-studio{padding:25px}.model-info h3{font-size:44px}.specs dd{font-size:28px}.tech-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.stage-top{padding:20px;gap:12px}.stage-top>span:last-child{display:none}.assembly-range-label{order:3;flex-basis:100%}.active-layer{padding:22px}.active-layer h3{font-size:25px}.swatch-list{gap:15px}.swatch-list button{width:105px}.installation-head{grid-template-columns:1fr 2fr;gap:20px}.installation-note{grid-column:2}.project-grid{gap:35px}.extras-grid h2{font-size:30px}}
@media(max-width:780px){html{scroll-padding-top:22px}.header{padding:25px 22px}.brand{width:155px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:46px;height:46px;border:1px solid #73acd0;border-radius:50%;align-items:center}.menu-toggle span{width:20px;height:2px;background:var(--ink)}.pool-poster{height:auto;min-height:980px;border-radius:0 0 35px 35px;padding:110px 22px 30px}.hero-kicker{font-size:16px;display:block;padding-bottom:22px;line-height:1.6}.hero-kicker>span:last-child{display:block;margin-top:3px}.pool-poster h1{font-size:16.2vw;letter-spacing:-.065em}.pool-object{width:112%;right:-9%;top:235px;max-width:none}.hero-copy{margin-top:400px;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:none}.hero-copy p{font-size:28px}.hero-copy .round-link{width:135px;height:135px;flex-shrink:0;margin:0;font-size:16px}.hero-tag{bottom:auto;top:610px;right:25px;line-height:1.5;font-size:16px}.hero-tag .tag-line{width:35px}.hero-foot{left:22px;right:22px;bottom:24px;align-items:flex-start;flex-direction:column;gap:18px;font-size:16px}.hero-foot>span{line-height:1.4;max-width:330px}.orbit-one{width:130%;height:35%;top:29%;right:-20%}.orbit-two{width:155%;height:45%;top:23%;right:-30%}.section{padding:65px 22px}.section-intro{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:30px}.section-intro h2{font-size:45px}.section-intro p{max-width:100%}.section-intro>.text-link{align-self:start}.model-studio{padding:18px;border-radius:25px}.model-tabs{gap:12px;margin-bottom:20px}.model-tabs button{padding:8px 0 16px}.model-tabs button>span{font-size:40px}.model-tabs button i{display:none}.model-tabs button small{font-size:16px}.model-tabs button b{font-size:16px}.model-panel{display:flex;flex-direction:column;gap:25px}.model-photo{width:100%;min-height:0;aspect-ratio:1.15;border-radius:15px 65px 15px 15px}.model-photo figcaption{left:12px;bottom:12px;right:12px;max-width:calc(100% - 24px);font-size:16px}.model-info{padding:0 5px 10px;width:100%}.model-info h3{font-size:44px;margin-top:15px}.model-info>p{min-height:0;max-width:none}.specs{margin:23px 0;gap:12px}.specs dd{font-size:31px}.specs dt,.specs dd small{font-size:16px}.catalog-link{margin:20px 0 0;grid-template-columns:1fr auto;gap:8px 15px}.catalog-link>span{grid-column:1}.catalog-link strong{grid-column:1;font-size:22px}.catalog-link b{grid-column:2;grid-row:1/3}.technology{border-radius:35px 35px 0 0;padding-inline:0;padding-bottom:35px}.technology .section-intro{padding:0 22px}.technology:before{width:70px;height:70px;top:45px}.tech-workspace{display:flex;flex-direction:column;gap:20px}.tech-stage{border-radius:0;border-inline:0}.stage-top{gap:15px;padding:18px 22px}.stage-top>span:first-child{flex:1}.stage-top>button{font-size:16px}.tech-stage svg{height:auto;flex:none;min-height:0}.pin,.axis{display:none}.assembly-toolbar{padding:20px 22px 0;gap:12px}.assembly-toolbar .button{min-width:0}.assembly-range-label{min-width:0;gap:12px}.diagram-note{padding-inline:22px}.tech-info{padding:0 22px;gap:14px}.active-layer{min-height:0;padding:22px;display:grid;grid-template-columns:65px 1fr;gap:0 12px;border-radius:22px}.active-layer-number{grid-row:1/3;font-size:38px}.active-layer>.eyebrow{font-size:16px}.active-layer h3{margin:8px 0 15px;font-size:25px}.active-layer p{grid-column:1/-1;font-size:16px;line-height:1.7}.layer-list{grid-template-columns:1fr 1fr;gap:10px}.layer-list button{font-size:16px;padding:12px;border:1px solid #a6cce1;border-radius:12px;grid-template-columns:1fr;gap:5px;align-content:start}.layer-list button>span:last-child{display:none}.layer-list button:hover,.layer-list button.active{padding-left:12px}.finish-bar{display:block;padding:35px 22px 0}.finish-bar h3{font-size:30px}.swatch-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:25px}.swatch-list button{width:100%;font-size:16px}.swatch{height:90px;border-radius:50% 50% 15px 15px}.swatch-list i{top:50px;right:15px}.installation{padding-top:50px;border-radius:0 0 35px 35px}.installation-head{display:flex;flex-direction:column;align-items:flex-start;padding:0 22px 28px;gap:20px}.installation-head h2{font-size:40px}.installation-note{gap:16px}.arrow-sketch{font-size:50px}.comparison{height:490px;max-height:none;margin:0 12px;border-radius:22px}.compare-label{top:18px;padding:9px 13px;font-size:16px}.before-label{left:14px}.after-label{right:14px}.compare-image{object-position:50% center}.drag-knob{width:70px;height:70px;font-size:24px}.divider-caption{font-size:16px;top:calc(50% + 55px)}.comparison-controls{padding:24px 22px 18px;gap:22px}.comparison-controls p strong{font-size:20px}.state-switch{width:100%;justify-content:space-between}.state-switch button{font-size:16px;padding:12px 13px;flex:1}.state-switch button span{display:none}.visual-note{padding:0 22px 30px;line-height:1.65}.project-grid{display:flex;flex-direction:column;gap:35px}.project-second,.project-third{margin:0;max-width:100%;width:100%}.project-photo img,.project-main .project-photo img{aspect-ratio:1.1}.project-main .project-photo{border-radius:80px 20px 20px 20px}.project-end{display:none}.project-caption{font-size:18px}.view-circle{width:90px;height:90px}.extras{padding-top:0}.extras-grid{grid-template-columns:1fr;gap:0}.extras-grid>a{border-bottom:0;padding:27px 0}.extras-grid>a:last-child{border-bottom:1px solid #aacce0}.extras-grid h2{font-size:30px}.extras-grid img{width:32%}.contact{padding-top:35px;padding-bottom:35px;border-radius:35px 35px 0 0}.contact-top{flex-wrap:wrap;gap:12px}.contact-main{align-items:flex-start;flex-direction:column;gap:32px;margin:35px 0}.contact h2{font-size:49px}.round-link.light{width:145px;height:145px;align-self:flex-end;margin-top:-7px}.contact-bottom{gap:25px;align-items:start;flex-direction:column}.contact-bottom>div>a{font-size:29px}.contact-bottom p{line-height:1.7}.contact-rings{width:450px;height:450px;right:-290px;top:80px}footer{padding:28px 22px;gap:25px;flex-wrap:wrap}footer .brand{width:140px}footer>span{margin-right:0}footer>a:not(.brand){margin-right:15px}dialog{padding:23px 20px}.brief-step h2{font-size:34px}.brief-options{grid-template-columns:1fr}.brief-options label>span{font-size:20px}.step-actions{flex-wrap:wrap;gap:15px}.solid-button{padding:15px 20px}}
@media(max-width:430px){.pool-poster{min-height:895px}.hero-copy{margin-top:310px;gap:15px}.hero-copy p{font-size:24px}.hero-copy .round-link{width:117px;height:117px}.pool-object{top:260px;width:122%;right:-13%}.hero-tag{top:545px;font-size:16px;right:22px}.hero-tag .tag-line{display:none}.hero-foot{gap:12px}.section-intro h2{font-size:41px}.model-tabs button>span{font-size:34px}.model-tabs button small{font-size:16px}.model-tabs{gap:7px}.model-studio{padding:15px}.specs{gap:10px}.specs dd{font-size:27px}.specs dt{font-size:16px}.layer-list{gap:8px}.layer-list button{padding:11px 10px}.stage-top>span:first-child{flex-basis:100%}.comparison{height:450px}.compare-label{font-size:16px}.after-label{max-width:147px;text-align:center;line-height:1.3}.before-label{line-height:1.3}.contact h2{font-size:43px}.extras-grid h2{font-size:27px}.extras-grid>a{gap:12px}.contact-bottom>div>a{font-size:26px}}
.model-photo{min-height:0;aspect-ratio:1.45;align-self:center}.model-photo img{object-fit:contain;background:#174b69}
@media(max-width:780px){.hero-tag{display:none}.pool-object{width:108%;right:-4%;top:240px}.pool-poster{min-height:900px}.model-photo{aspect-ratio:1.55}}
@media(max-width:430px){.pool-poster{min-height:820px}.pool-object{width:108%;right:-4%;top:250px}.hero-copy{margin-top:290px}.hero-foot{bottom:22px}}
@media(max-width:350px){.hero-copy{flex-direction:column;align-items:flex-start;margin-top:255px;gap:18px}.hero-copy p{font-size:24px}.hero-copy .round-link{align-self:flex-end;margin-top:-30px;width:112px;height:112px}.pool-poster{min-height:860px}.section-intro h2{font-size:37px}.specs{grid-template-columns:1fr;gap:12px}.specs>div{display:flex;justify-content:space-between;align-items:baseline}.model-tabs button>span{font-size:29px}.model-tabs button small{font-size:16px}.state-switch button{padding:11px 8px}.contact h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.pool-object,.contact-rings{transform:none!important}}
