@font-face{font-family:LenneperHand;src:url('assets/fonts/Caveat.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
[hidden]{display:none!important}.handwritten,.kicker.handwritten{font-family:LenneperHand,'Segoe Print',cursive!important;font-size:clamp(29px,2.6vw,41px);font-weight:600;line-height:1.25;text-transform:none;letter-spacing:.01em;margin-bottom:10px}.hero .kicker.handwritten{font-size:clamp(31px,2.8vw,45px);color:transparent;background:linear-gradient(100deg,#6defff,#d398ff,#ff99b9,#ffd293,#68ffe0,#6defff);background-size:250%;background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 0 13px #78c4f650);animation:rgb-script 8s linear infinite}.kicker.script-cyan,.script-cyan{color:#008294;text-shadow:0 0 13px #16f6ff88}.kicker.script-violet,.light .kicker.script-violet{color:#7843c7;text-shadow:0 0 12px #b794ff90}.kicker.script-pink,.light .kicker.script-pink{color:#bb397a;text-shadow:0 0 12px #ff93d190}.kicker.script-mint{color:#81ffca;text-shadow:0 0 15px #3bfdaf99}.kicker.script-blue,.planning .kicker.script-blue{color:#126ac0;text-shadow:0 0 13px #6abaffb0}.kicker.script-gold{color:#ffe19c;text-shadow:0 0 17px #ffcd6080}.kicker.script-teal{color:#008d85;text-shadow:0 0 13px #39ffd080}@keyframes rgb-script{to{background-position:250% 50%}}
.hero{height:auto;min-height:860px;max-height:none}.hero-grid{min-height:860px;padding-top:164px;padding-bottom:110px}.stage{top:115px;height:calc(100% - 115px);bottom:0}.hero-photo{object-position:75% 18%;transform:none;animation:none!important}.hero-off{filter:brightness(.7) saturate(.85)}.on .hero-off{filter:brightness(.7)}.on .hero-on{filter:brightness(1.14) saturate(1.07);transform:none}.hero.on{background:#416b8d}.hero .scene-shade{background:linear-gradient(90deg,#071a33 0%,#071a33cc 17%,#071a3340 38%,transparent 65%),linear-gradient(0deg,#071a33 0%,transparent 17%)}.hero.on .scene-shade{opacity:.6}.scene-glow{background:radial-gradient(ellipse at 71% 45%,#bbddff40,transparent 60%)}.power{display:flex;gap:13px;text-align:left;min-width:200px;min-height:74px;padding:13px 19px;right:60px;bottom:90px;background:#071d37d9;border:1px solid #91d9ffb0;box-shadow:0 0 0 6px #b2dcff09,0 8px 36px #03111e55;color:#fff;backdrop-filter:blur(18px)}.power .power-mark{font-size:37px;line-height:1;color:#93deff}.power strong{display:block;font-size:18px;font-weight:500}.power small{display:block;font-size:12px;color:#bdccdc;margin-top:5px}.on .power{background:#f2fbfff0;color:#12334b;box-shadow:0 0 34px #b6eaff50}.on .power small{color:#416177}.on .power .power-mark{color:#007dba}.hero-grid>div:first-child{pointer-events:auto}.hero-contact{position:relative;margin-top:24px;max-width:570px;padding:24px;background:#eaf5fff2;color:#18354a;border:1px solid #ffffffbb;border-radius:20px;backdrop-filter:blur(30px);box-shadow:0 22px 75px #020c2955;animation:unfold .3s ease-out}.hero.contact-open .hero-grid{align-items:start}.hero.contact-open .stage{height:745px}.hero.contact-open{overflow:visible}.inline-contact-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.inline-contact-head strong{font-size:22px}.inline-contact-head button{width:36px;height:36px;border:0;background:#13344c0a;border-radius:50%;font-size:24px;cursor:pointer}@keyframes unfold{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.icon{--neon:#7361eb;background:transparent;border:1px solid currentColor;color:var(--neon);box-shadow:0 0 13px color-mix(in srgb,var(--neon) 16%,transparent);width:57px;height:57px;padding:11px}.icon svg{width:100%;height:100%;filter:drop-shadow(0 0 3px color-mix(in srgb,currentColor 50%,transparent));transition:transform .4s}.category .icon{--neon:#794ecb;background:#fcfaff99}.category:hover .icon,.category:focus-visible .icon,.tile:hover .icon,.tile:focus-within .icon{animation:neon-spectrum 3s linear infinite}.category:hover .icon svg,.category:focus-visible .icon svg{transform:translateY(-3px) rotate(-5deg) scale(1.07)}.category{display:block}.category:hover{box-shadow:0 12px 36px #8563dd22}.tile .icon{background:transparent;color:#176fc6;border:1px solid #499fff70;padding:11px;box-shadow:0 0 20px #5dacff33}.tile:nth-child(3) .icon{color:#8b54d9}.tile:nth-child(4) .icon{color:#009d99}.call-button svg{width:21px;height:21px}.btn svg{flex-shrink:0;margin-right:8px}@keyframes neon-spectrum{0%,100%{color:#7069ff;filter:hue-rotate(0deg)}35%{color:#fa49d8}65%{color:#00afba}85%{color:#b5780b}}
.visual>img,.visual[data-view="detail"]>img{transform-origin:center;object-position:center;transition:opacity .3s;filter:none!important}.visual[data-scene="lara"]>img{object-position:75% center}.visual[data-view="detail"]{touch-action:none;cursor:zoom-in}.visual.can-pan{cursor:grab}.visual.can-pan:active{cursor:grabbing}.visual[data-view="detail"] .scene-tag{max-width:calc(100% - 20px);bottom:12px;left:10px;font-size:11px;line-height:1.5;pointer-events:none}.zoom-tools{position:absolute;z-index:5;top:10px;left:10px;display:flex;align-items:center;padding:4px;border-radius:11px;background:#10243cda;color:white;backdrop-filter:blur(10px);border:1px solid #ffffff45}.zoom-tools button{width:34px;height:36px;cursor:pointer;border:0;background:transparent;color:#fff;font-size:21px;border-radius:7px}.zoom-tools button:hover{background:#ffffff30}.zoom-tools output{font-size:12px;min-width:49px;text-align:center}.product-light{display:none}.thumb[data-view="evening"] img{filter:none}.devis{background:linear-gradient(115deg,#1c3459,#283f74 50%,#523173)}.devis .aurora{opacity:.98;filter:blur(18px);inset:-35% -15%}.devis .aurora i{width:90vw;height:26vw;border-top-width:24px;animation-duration:10s}.devis .aurora i:nth-child(1){top:12%;left:0;border-color:#21d7ff}.devis .aurora i:nth-child(2){top:35%;left:18%;border-color:#fc78da;animation-delay:-4s}.devis .aurora i:nth-child(3){bottom:0;left:40%;border-color:#b3a2ff;animation-delay:-7s}.devis .wrap{z-index:4}.devis p{font-size:17px}
.contact{padding:90px 0;background:radial-gradient(ellipse at 80% 30%,#d9f1ff 0%,transparent 60%),linear-gradient(120deg,#fcfdff,#f0f2fb)}.contact-finale{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}.contact h2{font-size:clamp(40px,4vw,62px);margin-bottom:25px}.finale-lead{font-size:18px;line-height:1.7;max-width:560px;color:#435e73}.finale-reasons{display:flex;flex-direction:column;gap:13px;font-size:15px;margin-top:25px;color:#3d566a}.finale-reasons span:before{content:'✓';color:#008b85;margin-right:12px}.contact-invitation{background:#ffffffa8;padding:35px;border:1px solid #fff;box-shadow:0 20px 60px #2f639318;position:relative}.contact-invitation>.handwritten{display:block;font-size:32px;color:#177e97;margin-bottom:25px}.phone-cta{display:flex;gap:16px;align-items:center;border:1px solid #bad6e7;background:#f6fcff;box-shadow:0 10px 30px #27689810;border-radius:16px;padding:22px 18px;transition:.25s}.phone-cta:hover{transform:translateY(-3px);border-color:#319fcb;box-shadow:0 12px 34px #369ac528}.phone-cta>.icon{--neon:#188aa7;width:45px;height:45px;padding:9px;flex-shrink:0}.phone-cta small{display:block;font-size:13px;color:#416277;margin-bottom:7px}.phone-cta strong{font-size:clamp(20px,2vw,29px);letter-spacing:-.025em;font-weight:600}.phone-cta>span:last-child{margin-left:auto}.contact-or{display:flex;align-items:center;gap:10px;color:#526e80;font-size:13px;margin:26px 0 19px}.contact-or:before,.contact-or:after{content:'';height:1px;background:#cbdce6;flex:1}.contact-invitation>.btn{width:100%;min-height:53px}.contact-invitation>p{text-align:center;font-size:14px;color:#526e80;line-height:1.6}.plain-mail{display:block;text-align:center;font-size:15px;color:#1b6988}.footer-layout{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-layout p{margin:9px 0;font-size:14px}.footer-links{display:flex;flex-wrap:wrap;gap:24px}.footer-links a{font-size:14px;border-bottom:1px solid #9eafbc;padding-bottom:3px}
#contactDialog{padding:40px;width:min(820px,calc(100% - 32px));max-height:90svh;overflow-y:auto;background:linear-gradient(135deg,#f4fbfff5,#e5eff9f5);color:#143249;overscroll-behavior:contain}#contactDialog::backdrop{background:#06172adb;backdrop-filter:blur(10px)}.dialog-intro h2{font-size:34px;line-height:1.15;margin:10px 0 14px}.dialog-intro p{font-size:16px;line-height:1.6;color:#466176}.dialog-intro>.handwritten{font-size:32px}.dialog-phone{display:inline-flex;align-items:center;gap:12px;color:#116881;font-size:21px;font-weight:600;padding:10px 0 24px}.dialog-phone svg{width:23px;height:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:#21435a;min-width:0}.form-grid .full{grid-column:1/-1}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;min-height:47px;padding:12px;border-radius:9px;border:1px solid #afc6d7;background:#ffffffd9;color:#16344b;font:400 16px/1.45 Arial,Helvetica,sans-serif;box-shadow:0 2px 6px #3b638408}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{outline:2px solid #349aca;outline-offset:2px}.enquiry-form textarea{resize:vertical;min-height:120px;max-height:65svh;transition:min-height .2s}.enquiry-form textarea.expanded{min-height:290px}.text-expand{align-self:flex-end;border:0;background:transparent;font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:5px 0;color:#28698a;cursor:pointer}.form-privacy,.form-note{font-size:12px;line-height:1.6;color:#49677c;max-width:620px}.form-privacy{margin:18px 0 16px}.form-privacy a{text-decoration:underline;text-underline-offset:3px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.enquiry-form .primary{background:#173c57;color:white;border-color:#173c57}.enquiry-form .call-button{border-color:#7da5bb;background:transparent;color:#16415b}.email-fallback{padding:16px;background:#d8edf7;border-radius:10px;margin-top:16px}.mail-status{font-size:14px;line-height:1.6;margin:0 0 13px}.copy-content{display:block;margin-top:14px;font-size:13px}.copy-content textarea{margin-top:8px}.hero .hero-contact .form-grid{gap:13px}.hero .hero-contact .form-note,.hero .hero-contact .form-privacy{font-size:12px}.hero .hero-contact textarea{min-height:100px}.hero .hero-contact textarea.expanded{min-height:250px}.links .btn{white-space:nowrap}
.subpage{background:#eef5fb;color:#123047}.subpage header{background:#0b223ce8}.subpage main{padding:134px 0 80px;min-height:80svh}.subpage h1{font-size:clamp(40px,5vw,67px);line-height:1.06;margin:12px 0 20px;letter-spacing:-.045em}.subpage .kicker{color:#7750c3}.subpage .intro{color:#4c677b}.subpage .btn{border-color:#93acbf}.subpage .primary{background:#163b56;color:#fff;border-color:#163b56}.subpage header .btn{color:#fff}.catalog-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:35px}.catalog-head .intro{margin-bottom:0}.catalog-layout{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}.filter-panel{position:sticky;top:108px;border:1px solid #fff;background:#ffffffa8;border-radius:18px;padding:24px;box-shadow:0 12px 38px #244b6a0d}.filter-panel h2{font-size:22px;letter-spacing:-.02em;margin:0 0 22px}.filter-panel label{display:flex;flex-direction:column;gap:8px;margin:0 0 20px;font-size:14px;font-weight:600}.filter-panel select,.filter-panel input{width:100%;padding:12px 9px;border:1px solid #b2c5d4;border-radius:8px;background:#fff;font:400 15px Arial;color:#23445c;min-height:45px}.filter-panel .btn{width:100%;font-size:13px}.results-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:2px 0 17px;font-size:15px}.active-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.filter-chip{border:1px solid #a5b8e0;border-radius:20px;background:#f9fbff;font-size:12px;line-height:1.4;padding:7px 12px;cursor:pointer}.catalog-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.catalog-card{background:linear-gradient(140deg,#ffffffd9,#ffffff80);border:1px solid #fff;border-radius:18px;padding:24px;box-shadow:0 14px 35px #163e5d0b;display:flex;flex-direction:column;min-width:0}.catalog-card-top{display:flex;gap:16px;align-items:center;margin-bottom:16px}.catalog-card .icon{flex-shrink:0;--neon:#8158d2}.catalog-card h2{font-size:26px;margin:4px 0;line-height:1.15}.catalog-card .category-name{font-size:12px;color:#667f90;line-height:1.4}.catalog-card p{font-size:15px;line-height:1.65;color:#466378;margin:5px 0 16px}.catalog-card .tag-row{display:flex;gap:7px;flex-wrap:wrap;margin:auto 0 17px}.tag-row span{font-size:12px;color:#3b617a;background:#e2edf6;padding:6px 9px;border-radius:5px}.catalog-actions{display:flex;gap:8px;flex-wrap:wrap}.catalog-actions .btn{font-size:13px;min-height:43px;padding:10px 12px}.catalog-card .source-link{display:block;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin-top:16px;color:#587487}.empty-results{text-align:center;padding:55px 24px;border-radius:18px;background:#fff9;border:1px solid white}.empty-results h2{font-size:29px}.empty-results p{line-height:1.6;color:#587487}.catalog-note{font-size:13px;line-height:1.7;color:#5a7489;margin-top:30px}.catalog-help{margin-top:45px;padding:30px;border-radius:18px;border:1px solid #fff;background:#e0eef9;display:flex;align-items:center;justify-content:space-between;gap:22px}.catalog-help h2{font-size:28px;margin:0 0 12px}.catalog-help p{font-size:15px;margin:0;line-height:1.6}.legal-layout{display:grid;grid-template-columns:220px 1fr;gap:45px}.legal-nav{display:flex;flex-direction:column;gap:15px;position:sticky;top:115px;align-self:start}.legal-nav a{padding:12px 16px;background:#ffffffa0;border:1px solid white;border-radius:9px;font-size:14px}.legal-content{background:#ffffffb3;border:1px solid white;border-radius:20px;padding:40px;min-width:0}.legal-content h2{font-size:32px;margin-top:45px}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:19px;margin:28px 0 10px}.legal-content p,.legal-content li{font-size:16px;line-height:1.8;color:#35536a}.legal-content a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-content dt{font-weight:600;font-size:14px;margin-top:18px}.legal-content dd{margin:6px 0;font-size:16px;line-height:1.6}.legal-note{padding:20px 24px;background:#e7edf7;border-left:3px solid #7e79c7;border-radius:0 12px 12px 0;margin:25px 0;font-size:14px;line-height:1.7}.legal-content .legal-note{font-size:14px}
@media(min-width:681px) and (max-width:1100px){.hero-grid>div:first-child{max-width:560px}.hero h1{font-size:73px}.contact-finale{gap:30px}.contact-invitation{padding:24px}.phone-cta{gap:10px;padding:18px 10px}.phone-cta strong{font-size:22px}.catalog-layout{grid-template-columns:220px 1fr;gap:20px}.catalog-card{padding:20px}.catalog-card h2{font-size:23px}.catalog-actions{flex-direction:column}.catalog-actions .btn{width:100%}}
@media(max-width:950px){.stage{right:-28px}.catalog-head{align-items:start;flex-direction:column}.contact-finale{grid-template-columns:1fr;gap:35px}.contact-invitation{max-width:640px}.catalog-layout{grid-template-columns:210px 1fr}.catalog-results{grid-template-columns:1fr}.legal-layout{grid-template-columns:1fr}.legal-nav{position:static;flex-direction:row;flex-wrap:wrap}.legal-nav a{flex:1}.hero.contact-open .hero-grid{display:block}.hero.contact-open .stage{height:745px}}
@media(max-width:680px){.handwritten,.kicker.handwritten{font-size:32px}.hero .kicker.handwritten{font-size:32px;max-width:100%}.hero,.hero-grid{min-height:960px}.hero-grid{padding:111px 22px 0}.hero h1{font-size:clamp(51px,12vw,72px);margin:12px 0 19px}.hero .stage{top:485px;height:475px;right:0}.hero-photo{object-position:100% 10%;transform:none!important}.hero .scene-shade{background:linear-gradient(180deg,#071a33 0%,#071a3320 18%,transparent 70%,#071a33 100%)}.power{right:22px;bottom:61px;min-width:186px;min-height:71px;padding:12px 16px}.power .power-mark{font-size:34px}.power strong{font-size:17px}.power small{font-size:11px}.hero-grid>div:first-child>p:last-of-type{margin-bottom:0}.hero-contact{padding:20px 16px;margin-bottom:35px}.hero.contact-open .hero-grid{padding-bottom:460px}.hero.contact-open .stage{top:auto;bottom:0;height:475px}.hero.contact-open{min-height:960px}.form-grid{gap:14px;grid-template-columns:1fr}.form-grid .full{grid-column:auto}.hero-contact .form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}#contactDialog{padding:34px 20px 24px;width:calc(100% - 20px);max-height:94svh}.dialog-intro h2{font-size:29px}.dialog-phone{font-size:20px}.hero .hero-contact textarea.expanded{min-height:280px}.copy{padding:42px 24px}.copy .kicker{font-size:31px}.icon{width:53px;height:53px;padding:10px}.category b{font-size:14px}.visual[data-view="detail"] .scene-tag{font-size:10px}.contact{padding:58px 0}.contact-invitation{padding:25px 20px}.contact-invitation>.handwritten{font-size:31px}.phone-cta{padding:17px 12px;gap:11px}.phone-cta strong{font-size:23px}.phone-cta .icon{width:40px;height:40px}.finale-lead{font-size:17px}.footer-layout{flex-direction:column;gap:24px}.footer-links{gap:20px}.devis .aurora{inset:-10% -40%}.devis .aurora i{width:180vw;height:65vw;border-top-width:18px}.subpage main{padding-top:112px}.subpage h1{font-size:44px}.catalog-layout{grid-template-columns:1fr}.filter-panel{position:static;padding:20px}.filter-panel form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.filter-panel label{margin-bottom:4px;font-size:13px}.filter-panel label:first-child{grid-column:1/-1}.filter-panel .btn{grid-column:1/-1;margin-top:7px}.catalog-results{grid-template-columns:1fr}.catalog-card{padding:23px}.catalog-actions{flex-direction:row}.catalog-actions .btn{width:auto;flex:1}.catalog-help{flex-direction:column;align-items:start;padding:25px}.catalog-help .btn{width:100%}.legal-content{padding:24px}.legal-content h2{font-size:29px}.legal-content p,.legal-content li{font-size:15px}.legal-nav{gap:10px}.legal-nav a{padding:12px;font-size:13px}.legal-note{padding:18px;font-size:13px}.subpage .intro{font-size:16px}}
@media(max-width:380px){.hero,.hero-grid{min-height:1040px}.hero .stage{top:565px}.hero-grid{padding-left:18px;padding-right:18px}.hero .kicker.handwritten{font-size:29px}.hero h1{font-size:50px}.power{right:18px}.phone-cta strong{font-size:21px}.phone-cta>.icon{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
.category:hover .icon svg,.category:focus-visible .icon svg,.tile:hover .icon svg{stroke:var(--icon-gradient)}.category:hover .neon-stop-a,.category:focus-visible .neon-stop-a{animation:stop-a 3s linear infinite}.category:hover .neon-stop-b,.category:focus-visible .neon-stop-b{animation:stop-a 3s -1s linear infinite}.category:hover .neon-stop-c,.category:focus-visible .neon-stop-c{animation:stop-a 3s -2s linear infinite}@keyframes stop-a{0%,100%{stop-color:#00c7f0}33%{stop-color:#dd4ad1}66%{stop-color:#ed9246}}

.hero-grid>div:first-child>p:has(>.btn){display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-grid>div:first-child{min-width:0}.legal-nav{height:auto;margin:0;padding:0}.catalog-card:hover .icon svg{stroke:var(--icon-gradient)}

/* Shared home/catalog header: explicit colors avoid inheriting dark page text. */
header.site-header{color:#fff;background:rgba(7,20,38,.34)}
.site-header .btn{color:#fff;border-color:var(--line)}
body.catalog-page{background:linear-gradient(#071a33 0 84px,#eef5fb 84px)}
@media(max-width:680px){body.catalog-page{background:linear-gradient(#071a33 0 72px,#eef5fb 72px)}}
