@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/cormorant-garamond-cyrillic-ext-300-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/cormorant-garamond-cyrillic-300-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/cormorant-garamond-latin-ext-300-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/cormorant-garamond-latin-300-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/cormorant-garamond-cyrillic-ext-400-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/cormorant-garamond-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/cormorant-garamond-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/cormorant-garamond-cyrillic-ext-500-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/cormorant-garamond-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/cormorant-garamond-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/cormorant-garamond-cyrillic-ext-600-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/cormorant-garamond-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/cormorant-garamond-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/cormorant-garamond-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/inter-cyrillic-ext-300-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/inter-cyrillic-300-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/inter-latin-ext-300-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:300;src:url(fonts/inter-latin-300-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/inter-cyrillic-ext-400-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/inter-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/inter-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/inter-cyrillic-ext-500-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/inter-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/inter-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url(fonts/inter-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/inter-cyrillic-ext-600-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/inter-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/inter-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#0E1F16;
  --forest:#173424;
  --moss:#2C5439;
  --sage:#7E9B7C;
  --sand:#C2A878;
  --stone:#F4F1EA;
  --paper:#FBFAF7;
  --line:rgba(23,52,36,.14);
  --muted:#5C6B60;
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --gut:clamp(20px,5vw,64px);
  --maxw:1280px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--sand)}
.eyebrow.on-light{color:var(--moss)}
h1,h2,h3,h4,h1.ph1.ph1{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;margin:0;line-height:1.12}
h1{font-size:clamp(38px,6.4vw,76px)}
h2,
h1.ph1.ph1{font-size:clamp(30px,4.4vw,52px)}
h3{font-size:clamp(21px,2.4vw,27px)}
p{margin:0 0 1em}
.lead{font-size:clamp(16px,1.6vw,19px);color:var(--muted);max-width:62ch}
.small{font-size:13px;color:var(--muted)}

/* ---------- header ---------- */
header{position:fixed;inset:0 0 auto 0;z-index:100;transition:background .35s,box-shadow .35s,backdrop-filter .35s}
header.solid{background:rgba(14,31,22,.94);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.hbar{display:flex;align-items:center;gap:24px;height:76px;max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.brand{display:flex;flex-direction:column;line-height:1.05;color:#fff;margin-right:auto}
.brand b{font-family:var(--serif);font-size:22px;font-weight:500;letter-spacing:.01em}
.brand span{font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-top:3px}
nav.main{display:flex;gap:26px}
nav.main a{color:rgba(255,255,255,.82);font-size:13.5px;letter-spacing:.03em;padding:6px 0;position:relative;transition:color .2s}
nav.main a:hover{color:#fff}
nav.main a.active{color:#fff}
nav.main a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--sand)}
.mus{background:none;border:1px solid rgba(255,255,255,.25);color:#fff;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin-right:10px;flex:none;transition:.25s}
.mus:hover{border-color:var(--sand)}
.mus .eq{display:flex;align-items:flex-end;gap:2px;height:14px}
.mus .eq i{width:2px;height:4px;background:var(--sand);border-radius:1px}
.mus.on .eq i{animation:musEq 1.1s ease-in-out infinite}
.mus.on .eq i:nth-child(2){animation-delay:.25s}.mus.on .eq i:nth-child(3){animation-delay:.5s}.mus.on .eq i:nth-child(4){animation-delay:.15s}
.mus svg.off{width:17px;height:17px;display:none}
.mus.muted .eq{display:none}.mus.muted svg.off{display:block;opacity:.75}
@keyframes musEq{0%,100%{height:3px}50%{height:14px}}
@media(max-width:900px){.mus{width:30px;height:30px;margin-right:6px}}
@media(max-width:480px){.mus{width:28px;height:28px;margin-right:2px}.lang button{padding:4px 7px!important}#hd .sbtn{padding:4px!important}#hd .brand b{font-size:19px}#brandSub{white-space:nowrap}}
.lang{display:flex;align-items:center;gap:2px;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:3px}
.lang button{background:none;border:0;color:rgba(255,255,255,.65);font-size:11px;letter-spacing:.1em;padding:4px 10px;border-radius:999px;cursor:pointer;transition:.2s}
.lang button.on{background:var(--sand);color:var(--ink);font-weight:600}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.burger i{display:block;width:22px;height:1.5px;background:#fff;transition:.25s}
.mobnav{position:fixed;inset:0;z-index:99;background:var(--forest);padding:110px var(--gut) 40px;display:none;flex-direction:column;gap:4px}
.mobnav.open{display:flex}
.mobnav a{color:#fff;font-family:var(--serif);font-size:30px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.1)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:clamp(560px,92vh,900px);display:flex;align-items:flex-end;overflow:hidden}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center 58%;transform:scale(1.04)}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,31,22,.62) 0%,rgba(14,31,22,.18) 34%,rgba(14,31,22,.55) 72%,rgba(14,31,22,.9) 100%)}
.hero .inner{position:relative;width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gut) clamp(46px,7vw,92px);color:#fff}
.hero h1{color:#fff;max-width:15ch;margin:16px 0 22px}
.hero .lead{color:rgba(255,255,255,.82);max-width:52ch}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:2px;font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;border:1px solid transparent;cursor:pointer;transition:.25s}
.btn-p{background:var(--sand);color:var(--ink)}
.btn-p:hover{background:#d4bc93}
.btn-g{border-color:rgba(255,255,255,.45);color:#fff}
.btn-g:hover{background:rgba(194,168,120,.18);border-color:var(--sand);color:#fff}
.btn-d{background:var(--forest);color:#fff}
.btn-d:hover{background:var(--moss)}
.btn-o{border-color:var(--line);color:var(--forest)}
.btn-o:hover{border-color:var(--forest)}

/* ---------- facts ---------- */
.facts{background:var(--forest);color:#fff}
.facts .g{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.13)}
.facts .c{background:var(--forest);padding:34px 22px}
.facts b{display:block;font-family:var(--serif);font-size:clamp(30px,3.6vw,44px);font-weight:400;color:var(--sand);line-height:1}
.facts span{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.62);margin-top:9px}

/* ---------- sections ---------- */
section{padding:clamp(44px,5.5vw,80px) 0}
.sec-head{max-width:660px;margin-bottom:clamp(34px,4vw,56px)}
.sec-head h2,
.sec-head h1.ph1.ph1{margin:12px 0 18px}
.stone{background:var(--stone)}
.dark{background:var(--forest);color:#fff}
.dark h2,.dark h3,
.dark h1.ph1.ph1{color:#fff}
.dark .lead,.dark p{color:rgba(255,255,255,.74)}

.split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,72px);align-items:center}
.split.rev>*:first-child{order:2}
.figure{position:relative;overflow:hidden;border-radius:3px}
.figure img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.3,1)}
.figure img{transform:translateY(var(--py,0px)) scale(1.16)}
.ratio-4x5{aspect-ratio:4/5}
.ratio-3x2{aspect-ratio:3/2}
.ratio-1x1{aspect-ratio:1/1}
.cap{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:12px}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(16px,2vw,26px)}
.cards.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.cards.c3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.cards.c3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:3px;overflow:hidden;display:flex;flex-direction:column;transition:.3s}
.card:hover{box-shadow:0 18px 44px -26px rgba(14,31,22,.5);transform:translateY(-3px)}
.card .ph{aspect-ratio:4/3;overflow:hidden}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card .bd{padding:24px 24px 28px}
.card h3{margin-bottom:9px}
.card p{font-size:14.5px;color:var(--muted);margin:0}
.num{font-family:var(--serif);font-size:15px;color:var(--sand);letter-spacing:.14em}

.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(24px,3vw,44px)}
.pillar{border-top:1px solid var(--line);padding-top:22px}
.dark .pillar{border-color:rgba(255,255,255,.2)}
.pillar h3{margin:14px 0 10px}
.pillar p{font-size:14.5px;color:var(--muted);margin:0}
.dark .pillar p{color:rgba(255,255,255,.7)}

/* ---------- price table ---------- */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:3px;background:#fff}
table{border-collapse:collapse;width:100%;min-width:620px;font-size:15px}
th,td{text-align:left;padding:15px 20px;border-bottom:1px solid var(--line)}
thead th{background:var(--forest);color:#fff;font-weight:500;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--stone)}
td.h{font-weight:600}
td.p{font-family:var(--serif);font-size:20px}
.tag{display:inline-block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}

/* ---------- gallery ---------- */
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gal .figure{aspect-ratio:1/1}
.gal .figure:nth-child(1){grid-column:span 2;grid-row:span 2;aspect-ratio:auto}

/* ---------- steps ---------- */
.steps{display:grid;gap:0}
.step{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:26px 0;border-top:1px solid var(--line)}
.step:last-child{border-bottom:1px solid var(--line)}
.step .n{font-family:var(--serif);font-size:34px;color:var(--sand);line-height:1}
.step h3{margin-bottom:8px}
.step p{margin:0;color:var(--muted);font-size:15px}

/* ---------- contact ---------- */
.cbox{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,60px)}
.cline{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.cline .k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sand);min-width:112px;padding-top:4px}
.cline .v{font-size:17px}
.cline .v a:hover{color:var(--sand)}
form{display:grid;gap:14px}
.field label{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.dark .field label{color:rgba(255,255,255,.6)}
input,textarea,select{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:2px;background:#fff;font-family:inherit;font-size:15px;color:var(--ink)}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--moss)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* ---------- footer ---------- */
footer{background:var(--ink);color:rgba(255,255,255,.6);padding:60px 0 34px;font-size:14px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.12)}
footer h4{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:16px;font-weight:500}
footer a:hover{color:var(--sand)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.fbot{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;padding-top:26px;font-size:12.5px}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1)}
.reveal.in{opacity:1;transform:none}

.note{background:#fff;border-left:3px solid var(--sand);padding:18px 22px;font-size:14.5px;color:var(--muted)}
.dark .note{background:rgba(255,255,255,.06);border-color:var(--sand);color:rgba(255,255,255,.75)}

@media(max-width:980px){
  .split,.cbox{grid-template-columns:1fr}
  .split.rev>*:first-child{order:0}
  .facts .g{grid-template-columns:repeat(2,1fr)}
  .fgrid{grid-template-columns:1fr 1fr}
  .gal{grid-template-columns:repeat(2,1fr)}
  .gal .figure:nth-child(1){grid-column:span 2;grid-row:auto;aspect-ratio:4/3}
}
@media(max-width:760px){
  nav.main{display:none}
  .burger{display:flex}
  .row2{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .step{grid-template-columns:44px 1fr;gap:14px}
}

/* ================= BANDS + MOTION ================= */
#bgfix,#bgfix2{position:fixed;inset:0;z-index:-3;background-size:cover;background-position:center 55%;
  transition:opacity 1.1s ease;animation:bgzoom 34s ease-in-out infinite alternate;}
#bgfix2{z-index:-2;opacity:0}
@keyframes bgzoom{0%{transform:scale(1)}100%{transform:scale(1.05)}}
#bgveil{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,16,10,.5) 0%,rgba(6,16,10,.2) 40%,rgba(6,16,10,.72) 100%)}
body{background:var(--ink)}
section{background:var(--paper);position:relative}
section.stone{background:var(--stone)}
section.dark{background:var(--forest)}
.hero{min-height:clamp(560px,100vh,1000px);background:transparent}
.hero .bg{display:none}
.hero .veil{background:linear-gradient(180deg,rgba(6,16,10,.35) 0%,rgba(6,16,10,0) 40%,rgba(6,16,10,.45) 100%)}
header.solid{background:rgba(8,20,12,.9)}

/* page hero on sub pages (text over photo, short) */
section.phero{background:linear-gradient(180deg,rgba(6,16,10,.35) 0%,rgba(6,16,10,.25) 35%,rgba(6,16,10,.82) 100%);min-height:clamp(420px,66vh,680px);display:flex;align-items:flex-end;
  padding:150px 0 clamp(46px,6vw,80px)}
.phero .wrap{width:100%}
.phero h1,.phero h2,.phero h1.ph1.ph1{color:#fff}
.phero .lead{color:rgba(255,255,255,.88)}
.phero .eyebrow{color:var(--sand)}
.phero .sec-head{margin-bottom:0;max-width:760px}
.phero h2,
.phero h1.ph1.ph1{font-size:clamp(40px,6.4vw,84px)}


/* ===== PHOTO EVERYWHERE, NO BOXES ===== */
#bgveil{background:
  radial-gradient(130% 90% at 30% 50%,rgba(6,16,10,.50) 0%,rgba(6,16,10,.72) 70%,rgba(6,16,10,.86) 100%)!important}
body{color:#fff}
section,section.stone,section.dark,section.phero,.hscroll{background:transparent!important}
section.dark{clip-path:none!important}
h1,h2,h3,h4,.dark h2,.dark h3,h1.ph1.ph1,.dark h1.ph1.ph1{color:#fff}
h1,h2,h3,h1.ph1.ph1{text-shadow:0 2px 24px rgba(0,0,0,.45)}
p,.lead,.dark p,.dark .lead,.card p,.pillar p,.step p,.small,.cap,.note{color:rgba(255,255,255,.86)!important;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.eyebrow,.eyebrow.on-light{color:var(--sand)}
.stmt p{color:#fff}
.stmt .w{opacity:.2}
/* cards: photo + text, no box */
.card{background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible}
.card .ph{border-radius:4px;overflow:hidden}
.card .bd{padding:18px 2px 0!important}
.card .bd:before{content:"";display:block;height:1px;width:40px;background:var(--sand);margin-bottom:14px;transition:width .5s}
.card:hover .bd:before{width:100%}
.pillar,.step,.step:last-child{border-color:rgba(255,255,255,.22)!important}
.step:hover{background:transparent}
.note{background:none!important;border-left:2px solid var(--sand);padding:4px 0 4px 20px}
.facts,.facts .g,.facts .c{background:transparent!important}
.facts .g{gap:0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.marq{background:transparent!important;border-color:rgba(255,255,255,.2)}
.soon{border:0!important;padding:0}
/* prices as lines */
.plist{display:grid}
.prow{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:12px;align-items:baseline;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.18);transition:padding .35s,border-color .35s}
.prow:hover{padding-left:14px;border-color:var(--sand)}
.prow.hd{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--sand);padding:0 0 12px}
.prow.hd:hover{padding-left:0}
.prow .h{font-family:var(--serif);font-size:clamp(24px,2.6vw,34px)}
.prow .p{font-family:var(--serif);font-size:22px;color:var(--sand)}
.prow .q{font-size:14px;color:rgba(255,255,255,.8)}
@media(max-width:600px){.prow{grid-template-columns:1fr 1fr}.prow.hd{display:none}}
/* deko tiles with photos */
.deko-tile{background-size:cover!important;background-position:center!important;border:0!important}
.deko-tile:before{background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.72))!important}
.deko-tile{transition:transform .5s cubic-bezier(.2,.7,.3,1),background-size 1s}
/* form: underline fields */
input,textarea,select{background:transparent!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.35)!important;border-radius:0;color:#fff!important;padding:10px 0}
input:focus,textarea:focus,select:focus{border-bottom-color:var(--sand)!important}
select option{color:#000}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.4)}
.field label{color:rgba(255,255,255,.65)!important}
.cline{border-bottom-color:rgba(255,255,255,.2)}
.btn-d{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.btn-d:hover{background:#fff;color:var(--ink)}
.btn-o{border-color:rgba(255,255,255,.5);color:#fff}
.btn-o:hover{background:#fff;color:var(--ink)}
.hs-bar{background:rgba(255,255,255,.2)}
.hs-bar i{background:var(--sand)}
footer{background:linear-gradient(180deg,rgba(6,16,10,0) 0,rgba(6,16,10,.97) 90px,#06100a 100%)}
.pwin{height:clamp(300px,62vh,620px)}
.bgdot{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:90;display:grid;gap:10px}
.bgdot i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.35);transition:.3s}
.bgdot i.on{background:var(--sand);transform:scale(1.6)}
@media(max-width:760px){.bgdot{display:none}}

.brandh{font-size:clamp(52px,9vw,128px)!important;max-width:none!important;letter-spacing:-.02em}
.bigprice{font-family:var(--serif);font-size:clamp(44px,7.5vw,104px);line-height:1.02;color:#fff;margin:14px 0 22px;text-shadow:0 4px 30px rgba(0,0,0,.4)}
.ptease{padding:clamp(50px,6vw,90px) 0}
.svlist{display:grid;border-top:1px solid rgba(255,255,255,.2)}
.svi{display:grid;grid-template-columns:44px 96px 1fr 30px;gap:22px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2);transition:padding .4s,background .4s}
.svi img{width:96px;height:68px;object-fit:cover;border-radius:3px;transition:transform .5s,width .5s}
.svn{font-family:var(--serif);color:var(--sand);font-size:18px}
.svt b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.3vw,28px);color:#fff}
.svt em{font-style:normal;font-size:14.5px;color:rgba(255,255,255,.78)}
.sva{font-size:22px;color:var(--sand);transition:transform .4s}
.svi:hover{padding-left:14px;background:linear-gradient(90deg,rgba(194,168,120,.12),transparent)}
.svi:hover img{transform:scale(1.08)}
.svi:hover .sva{transform:translateX(8px)}
@media(max-width:600px){.svi{grid-template-columns:72px 1fr;gap:14px}.svi img{width:72px;height:56px}.svn,.sva{display:none}}
/* photo window between bands */
.pwin{height:clamp(280px,56vh,560px);display:flex;align-items:center;overflow:hidden;position:relative}
.pwin .big{font-family:var(--serif);font-size:clamp(54px,10vw,150px);line-height:1;color:#fff;white-space:nowrap;
  will-change:transform;text-shadow:0 10px 40px rgba(0,0,0,.35)}
.pwin .big.o{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.75);text-shadow:none}

/* dark band curtain (scroll-linked) */


/* statement: words fill on scroll */
.stmt{padding:clamp(80px,12vw,170px) 0}
.stmt p{font-family:var(--serif);font-size:clamp(30px,4.6vw,62px);line-height:1.18;color:var(--forest);max-width:22ch;margin:0}
.stmt .w{opacity:.15;transition:opacity .25s linear}
.stmt .w.on{opacity:1}

/* horizontal scroll gallery */
.hscroll{padding:0!important;background:var(--stone)}
.hs-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center}
.hs-track{display:flex;gap:clamp(14px,2vw,26px);padding:0 var(--gut);will-change:transform;align-items:center}
.hs-head{flex:0 0 auto;width:clamp(240px,28vw,400px);padding-right:20px}
.hs-head h2,
.hs-head h1.ph1.ph1{margin:12px 0 16px}
.hs-item{flex:0 0 auto;width:clamp(240px,34vw,500px);aspect-ratio:4/5;border-radius:4px;overflow:hidden;position:relative}
.hs-item:nth-child(odd){margin-top:8vh}
.hs-item img{width:100%;height:100%;object-fit:cover;transform:scale(1.18);transition:transform 1.2s cubic-bezier(.16,.84,.28,1)}
.hs-item:hover img{transform:scale(1.05)}
.hs-item .n{position:absolute;left:16px;bottom:14px;font-family:var(--serif);color:#fff;font-size:22px;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.hs-bar{position:absolute;left:var(--gut);right:var(--gut);bottom:34px;height:1px;background:var(--line)}
.hs-bar i{display:block;height:100%;width:0;background:var(--moss)}

/* steps rail */
.steps{position:relative}
.steps .rail{position:absolute;left:-22px;top:0;bottom:0;width:2px;background:var(--line)}
.steps .rail i{display:block;width:100%;height:0;background:var(--sand)}
@media(max-width:760px){.steps .rail{display:none}}

/* reveal directions */
.reveal.l{transform:translateX(-46px)}
.reveal.r{transform:translateX(46px)}
.reveal.z{transform:scale(.94);filter:blur(8px);transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.3,1),filter .9s}
.reveal.in{transform:none;filter:none}

/* cursor ring */
.cur{display:none!important;position:fixed;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;border:1px solid #fff;border-radius:50%;
  pointer-events:none;z-index:300;mix-blend-mode:difference;transition:width .25s,height .25s,margin .25s,background .25s;display:none}
.cur.big{width:70px;height:70px;margin:-35px 0 0 -35px;background:#fff}
@media(hover:hover) and (pointer:fine){.cur{display:block}}

.cards{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.soon{border-color:var(--line)!important}
/* scroll progress */
.prog{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--sand),#e6d3a8);z-index:200;transition:width .1s linear}

/* particles */
#pollen{position:fixed;inset:0;z-index:58;pointer-events:none;opacity:.4}

/* hero motion */
.hero .bg{animation:kb 26s ease-in-out infinite alternate;will-change:transform}
@keyframes kb{0%{transform:scale(1.04)}100%{transform:scale(1.16)}}
.scrolldown{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:3;width:22px;height:36px;
  border:1px solid rgba(255,255,255,.45);border-radius:14px}
.scrolldown i{position:absolute;left:50%;top:7px;width:3px;height:6px;margin-left:-1.5px;border-radius:2px;background:var(--sand);
  animation:sd 1.8s cubic-bezier(.4,0,.2,1) infinite}
@keyframes sd{0%{opacity:0;transform:translateY(0)}30%{opacity:1}70%{opacity:1;transform:translateY(13px)}100%{opacity:0;transform:translateY(15px)}}

/* split text */
.sp{display:inline-block;overflow:hidden;vertical-align:top}
.sp>span{display:inline-block;transform:translateY(105%) rotate(4deg);opacity:0;
  transition:transform .82s cubic-bezier(.16,.84,.28,1),opacity .6s ease}
.sp.in>span{transform:none;opacity:1}

/* reveal stagger + directions */
.reveal{transition-delay:var(--d,0ms)}
.figure img{clip-path:inset(0 0 100% 0);transition:clip-path 1.05s cubic-bezier(.16,.84,.28,1),transform .9s cubic-bezier(.2,.7,.3,1)}
.figure.shown img{clip-path:inset(0 0 0 0)}

/* headings underline */
.sec-head h2:after,

/* headings underline */
.sec-head h1.ph1.ph1:after{content:"";display:block;height:1px;width:0;background:var(--sand);margin-top:18px;
  transition:width 1.1s cubic-bezier(.16,.84,.28,1) .25s}
.sec-head.in h2:after,
.sec-head.in h1.ph1.ph1:after{width:88px}

/* buttons shine */
.btn{position:relative;overflow:hidden}
.btn:before{content:"";position:absolute;top:0;left:-140%;width:60%;height:100%;transform:skewX(-22deg);
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.42),rgba(255,255,255,0));transition:left .65s ease}
.btn:hover:before{left:150%}
.btn:hover{transform:translateY(-2px)}

/* cards tilt */
.card{transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s}
.card .ph img{transition:transform 1s cubic-bezier(.2,.7,.3,1)}
.card:hover .ph img{transform:scale(1.07)}

/* facts */
.facts .c{position:relative;overflow:hidden;transition:background .4s}
.facts .c:hover{background:var(--moss)}
.facts b{transition:transform .4s}
.facts .c:hover b{transform:translateY(-2px)}

/* marquee */
.marq{background:var(--ink);border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);
  overflow:hidden;padding:14px 0}
.marq-t{display:inline-block;white-space:nowrap;color:var(--sand);font-family:var(--serif);
  font-size:clamp(18px,2.2vw,26px);letter-spacing:.02em;animation:marq 34s linear infinite}
.marq:hover .marq-t{animation-play-state:paused}
@keyframes marq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* page transition */
#app{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s cubic-bezier(.16,.84,.28,1)}
#app.on{opacity:1;transform:none}

/* nav underline grow */
nav.main a:before{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--sand);transition:width .3s}
nav.main a:hover:before{width:100%}

/* steps line */
.step{transition:background .35s,padding-left .35s}
.step:hover{background:rgba(126,155,124,.09);padding-left:10px}
.step .n{transition:transform .35s,color .35s}
.step:hover .n{transform:scale(1.14);color:var(--moss)}

/* pillar */
.pillar{transition:transform .4s}
.pillar:hover{transform:translateY(-4px)}
.pillar h3{transition:color .3s}
.pillar:hover h3{color:var(--sand)}

/* table rows */
tbody tr{transition:background .25s,transform .25s}
tbody tr:hover{transform:translateX(4px)}

/* float badge */
.wa-float{position:fixed;right:20px;bottom:22px;z-index:120;width:54px;height:54px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px -10px rgba(0,0,0,.5);
  animation:pulse 2.6s ease-out infinite}
.wa-float svg{width:28px;height:28px;fill:#fff}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  .sp>span{transform:none;opacity:1}
  .figure img{clip-path:none}
}

/* ---------- Dekopflanzen: category tiles ---------- */
.deko-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.deko-tile{position:relative;aspect-ratio:4/3;border-radius:4px;overflow:hidden;display:flex;align-items:flex-end;
  background:linear-gradient(150deg,var(--moss),var(--forest) 75%);border:1px solid var(--glassline,rgba(255,255,255,.16));
  transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s}
.deko-tile:hover{transform:translateY(-4px);box-shadow:0 20px 44px -22px rgba(0,0,0,.55)}
.deko-tile:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 25% 115%,rgba(0,0,0,.6),transparent 62%)}
.deko-tile .dt-n{position:absolute;top:16px;left:18px;z-index:2;font-family:var(--serif);font-size:14px;color:var(--sand);letter-spacing:.1em}
.deko-tile span{position:relative;z-index:2;padding:20px 20px 22px;font-family:var(--serif);font-size:19px;color:#fff;line-height:1.28}

/* ---------- Dekopflanzen: breadcrumb + "coming soon" panel ---------- */
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--sand);margin-bottom:16px}
.crumb a{color:rgba(255,255,255,.8)}
.crumb a:hover{color:#fff}
.crumb i{opacity:.5;font-style:normal}
.soon{border:1px dashed rgba(255,255,255,.3);border-radius:6px;padding:clamp(30px,4.5vw,50px);text-align:center;display:grid;gap:16px;justify-items:center}

/* ================= v6: slider, video, gallery, search, promo ================= */
@media(max-width:1060px){nav.main{display:none}.burger{display:flex}}
.hero .veil{z-index:1}
.hero .inner{z-index:2}
.hslider{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0b1a11}
.hslide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.hslide.on{opacity:1}
.hslide video,.hslide img{width:100%;height:100%;object-fit:cover}
.hslide img{animation:kb 16s ease-in-out infinite alternate}
.hslide .hblur{position:absolute;inset:0;filter:blur(28px) brightness(.8);transform:scale(1.25);animation:none}
.hslide video{position:relative}
@media(min-aspect-ratio:11/10){
  .hslide video{object-fit:contain;object-position:82% 50%;-webkit-mask-image:linear-gradient(90deg,transparent 50%,#000 60%,#000 84%,transparent 92%);mask-image:linear-gradient(90deg,transparent 50%,#000 60%,#000 84%,transparent 92%)}
}
@media(max-aspect-ratio:11/10){.hslide .hblur{display:none}}
.hero .veil{background:linear-gradient(90deg,rgba(6,16,10,.6) 0%,rgba(6,16,10,.15) 65%,rgba(6,16,10,0) 100%),linear-gradient(180deg,rgba(6,16,10,.4) 0%,rgba(6,16,10,0) 35%,rgba(6,16,10,.6) 100%)!important}
.hdots{display:flex;gap:8px;margin-top:30px}
.hdots button{width:34px;height:3px;border:0;background:rgba(255,255,255,.3);cursor:pointer;padding:0;position:relative;overflow:hidden;border-radius:2px}
.hdots button.on:after{content:"";position:absolute;inset:0;background:var(--sand);transform-origin:left;animation:hbar var(--dur,7s) linear forwards}
@keyframes hbar{from{transform:scaleX(0)}to{transform:scaleX(1)}}

.mrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:12px}
.mtile{position:relative;aspect-ratio:9/16;border-radius:4px;overflow:hidden;cursor:zoom-in;background:#0b1a11;display:block}
.mtile.wide{aspect-ratio:4/3}
.mtile.sq{aspect-ratio:4/5}
.mtile video,.mtile img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.3,1)}
.mtile:hover video,.mtile:hover img{transform:scale(1.05)}
.mtile .mc{position:absolute;left:0;right:0;bottom:0;padding:48px 14px 13px;background:linear-gradient(transparent,rgba(0,0,0,.78));font-size:13.5px;color:#fff;line-height:1.35;text-shadow:none}
.mtile .play{position:absolute;top:10px;left:10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:rgba(0,0,0,.45);padding:4px 9px;border-radius:99px;color:#fff;display:flex;align-items:center;gap:6px}
.mtile .play:before{content:"";width:6px;height:6px;border-radius:50%;background:#e0463a;animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.25}}
.hs-item video{width:100%;height:100%;object-fit:cover}

.masonry{columns:4 230px;column-gap:12px}
.masonry .mtile{break-inside:avoid;margin-bottom:12px;aspect-ratio:auto}
.masonry .mtile.vid{aspect-ratio:9/16}
.masonry .mtile img{height:auto}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 0}
.chips a,.chips button{border:1px solid rgba(255,255,255,.38);border-radius:99px;padding:8px 16px;font-size:12.5px;letter-spacing:.04em;color:#fff;background:transparent;cursor:pointer;transition:.25s}
.chips a:hover,.chips button:hover,.chips button.on{background:#fff;color:var(--ink);border-color:#fff}

.lb{position:fixed;inset:0;z-index:400;background:rgba(4,10,6,.95);display:flex;align-items:center;justify-content:center;padding:16px}
.lb img,.lb video{max-width:min(94vw,1200px);max-height:86vh;border-radius:4px;box-shadow:0 30px 80px -30px #000}
.lb button{position:absolute;background:rgba(255,255,255,.08);border:0;color:#fff;font-size:26px;cursor:pointer;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.lb button:hover{background:rgba(255,255,255,.2)}
.lb .x{top:calc(14px + env(safe-area-inset-top,0px));right:14px}
.lb .pv{left:12px;top:50%;transform:translateY(-50%)}
.lb .nx{right:12px;top:50%;transform:translateY(-50%)}
.lb .cnt{position:absolute;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:0;right:0;text-align:center;font-size:13px;color:rgba(255,255,255,.7)}

.sbtn{background:none;border:0;color:#fff;cursor:pointer;padding:6px;display:flex;align-items:center;gap:7px;font-size:13px;opacity:.85}
.sbtn:hover{opacity:1}
.sbtn svg{width:18px;height:18px}
.sbtn span{display:none}
@media(min-width:1061px){.sbtn span{display:inline}}
.srch{position:fixed;inset:0;z-index:350;background:rgba(6,16,10,.97);backdrop-filter:blur(10px);padding:calc(96px + env(safe-area-inset-top,0px)) var(--gut) 40px;overflow:auto}
.srch .box{max-width:780px;margin:0 auto}
.srch .x{position:absolute;top:calc(22px + env(safe-area-inset-top,0px));right:var(--gut);background:none;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:50%;width:44px;height:44px;font-size:20px;cursor:pointer}
.srch input{font-family:var(--serif)!important;font-size:clamp(28px,4.4vw,48px)!important;padding:10px 0!important}
.srch .hint{font-size:13px;color:rgba(255,255,255,.55);margin-top:12px}
.sres{margin-top:22px;display:grid}
.sres a{display:block;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14);transition:padding .3s}
.sres a:hover{padding-left:10px}
.sres a em{display:block;font-style:normal;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sand);margin-bottom:4px}
.sres a b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(20px,2.4vw,26px);color:#fff}
.sres a span{display:block;font-size:14px;color:rgba(255,255,255,.66);margin-top:4px}
.sres mark{background:rgba(194,168,120,.35);color:#fff;border-radius:2px}

.promo{padding:clamp(60px,7vw,100px) 0}
.tagp{display:inline-block;background:var(--sand);color:var(--ink);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:6px 13px;border-radius:99px;font-weight:600}
.promo .pbig{font-family:var(--serif);font-size:clamp(38px,5.2vw,74px);line-height:1.04;margin:20px 0 14px;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.4);max-width:16ch}
.promo .pprice{font-family:var(--serif);font-size:clamp(34px,4.6vw,64px);color:var(--sand);line-height:1}
.promo .pstock{display:inline-flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.06em;margin-top:14px;color:#fff}
.promo .pstock:before{content:"";width:9px;height:9px;border-radius:50%;background:#5fd07a;box-shadow:0 0 0 0 rgba(95,208,122,.6);animation:pulse2 2s infinite}
@keyframes pulse2{70%{box-shadow:0 0 0 12px rgba(95,208,122,0)}100%{box-shadow:0 0 0 0 rgba(95,208,122,0)}}
.promo .split{align-items:end}

.sort-no{font-family:var(--serif);font-size:clamp(70px,11vw,150px);line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(194,168,120,.8)}
.klist .prow{grid-template-columns:1.1fr 1.2fr 1fr}
.klist .prow .s{font-size:14px;color:#5fd07a}
@media(max-width:600px){.klist .prow{grid-template-columns:1fr 1fr}}
.topic{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(26px,4vw,64px);align-items:center;padding:clamp(40px,6vw,80px) 0;border-top:1px solid rgba(255,255,255,.18)}
.topic.rev>*:first-child{order:2}
.topic .num{font-size:18px}
.topic h3{font-size:clamp(28px,3.4vw,42px);margin:12px 0 16px}
@media(max-width:900px){.topic{grid-template-columns:1fr}.topic.rev>*:first-child{order:0}}
.anchor{scroll-margin-top:90px}
.probc{max-width:820px;margin:0 auto;text-align:center}
.probc h2,
.probc h1.ph1.ph1{margin:14px 0 20px}
.probc .lead{margin:0 auto}
.vs{display:grid;grid-template-columns:1fr 60px 1fr;gap:20px;align-items:stretch;max-width:1000px;margin:clamp(34px,5vw,56px) auto 0}
.vsi{padding:26px 28px;border-radius:6px;border:1px solid rgba(255,255,255,.2)}
.vsi.bad{background:rgba(120,40,30,.18)}
.vsi.good{background:rgba(194,168,120,.14);border-color:rgba(194,168,120,.55)}
.vsk{display:block;font-family:var(--serif);font-size:clamp(22px,2.2vw,28px);margin-bottom:12px}
.vsi.good .vsk{color:var(--sand)}
.vsi ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.vsi li{padding-left:24px;position:relative;font-size:15px;color:rgba(255,255,255,.88)}
.vsi.bad li:before{content:"✕";position:absolute;left:0;color:#e08070}
.vsi.good li:before{content:"✓";position:absolute;left:0;color:var(--sand)}
.vsmid{display:flex;align-items:center;justify-content:center;font-size:34px;color:var(--sand)}
.bigline{font-family:var(--serif);font-size:clamp(26px,3.4vw,44px);line-height:1.2;text-align:center;max-width:26ch;margin:clamp(34px,5vw,60px) auto 0!important;color:#fff!important}
.solhead h2,
.solhead h1.ph1.ph1{font-size:clamp(40px,6vw,82px);margin-top:12px;max-width:16ch}
.solcols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px);margin:26px 0 clamp(30px,4vw,50px)}
.solcols .lead{max-width:none}
.solstrip{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.solstrip .ss{min-width:0}
.solstrip .mtile{aspect-ratio:auto;height:clamp(260px,32vw,440px)}
@media(max-width:760px){.vs{grid-template-columns:1fr}.vsmid{transform:rotate(90deg);height:30px}.solcols{grid-template-columns:1fr}.solstrip{grid-template-columns:1fr 1fr}.solstrip .big{grid-column:span 2}}
.lg-view{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.lg-track{display:flex;gap:18px;width:max-content;animation:lgmove 90s linear infinite}
.lg-view:hover .lg-track{animation-play-state:paused}
.lg-item{flex:0 0 auto;width:clamp(200px,22vw,320px);aspect-ratio:3/4;border-radius:4px;overflow:hidden;cursor:zoom-in}
.lg-item:nth-child(even){margin-top:40px}
.lg-item img,.lg-item video{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.lg-item:hover img,.lg-item:hover video{transform:scale(1.05)}
@keyframes lgmove{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}
@media(prefers-reduced-motion:reduce){.lg-track{animation:none!important}.lg-view{overflow-x:auto}}
.promo .pprice s{color:rgba(255,255,255,.55);font-size:.55em;text-decoration-thickness:2px;margin-right:10px}
.promo .pprice small{font-size:.45em;color:rgba(255,255,255,.8)}
.puntil{margin-top:12px;font-size:14px;letter-spacing:.04em}
.ppics{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ppics .mtile{aspect-ratio:3/4}
.poff{position:absolute;z-index:3;top:-22px;right:-18px;width:96px;height:96px;border-radius:50%;background:var(--sand);color:var(--ink);
  display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:28px;font-weight:600;transform:rotate(-10deg);
  box-shadow:0 14px 34px -12px rgba(0,0,0,.6);animation:poff 3s ease-in-out infinite}
@keyframes poff{50%{transform:rotate(-4deg) scale(1.06)}}
.ptest{position:absolute;left:0;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;z-index:2;
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#1a1a1a;background:#f0c96a;padding:14px 7px;border-radius:6px 0 0 6px}
@media(max-width:760px){.ptest{position:static;transform:none;writing-mode:horizontal-tb;display:block;text-align:center;border-radius:0;margin:-20px 0 24px}.poff{right:-6px;width:78px;height:78px;font-size:22px}}
.dkgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,32px)}
.dkcard{display:block;position:relative;border-radius:6px;overflow:hidden;aspect-ratio:3/2;box-shadow:0 24px 50px -30px rgba(0,0,0,.8)}
.dkimg{position:absolute;inset:0}
.dkimg img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.16,.84,.28,1)}
.dkcard:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(4,12,7,.85) 100%);transition:opacity .4s}
.dkcap{position:absolute;left:0;right:0;bottom:0;z-index:2;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:16px;padding:clamp(18px,2.2vw,30px)}
.dkcap .dkn{font-family:var(--serif);color:var(--sand);font-size:18px;padding-bottom:6px}
.dkcap .dkt{font-family:var(--serif);font-weight:600;color:#fff;font-size:clamp(24px,2.4vw,34px);line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.dkcap .dka{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;transition:.35s}
.dkcard:hover .dkimg img{transform:scale(1.07)}
.dkcard:hover .dka{background:var(--sand);border-color:var(--sand);color:var(--ink);transform:translateX(4px)}
@media(max-width:700px){.dkgrid{grid-template-columns:1fr}.dkcard{aspect-ratio:4/3}}
.dklist{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(30px,5vw,80px);border-top:1px solid rgba(255,255,255,.22)}
.dkrow{display:grid;grid-template-columns:52px 1fr 30px;align-items:center;gap:14px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.22);transition:padding .35s,border-color .35s,background .35s}
.dkn{font-family:var(--serif);color:var(--sand);font-size:18px}
.dkt{font-family:var(--serif);font-size:clamp(21px,2vw,27px);color:#fff;line-height:1.25}
.dka{color:var(--sand);font-size:20px;transition:transform .35s}
.dkrow:hover{padding-left:12px;border-color:var(--sand);background:linear-gradient(90deg,rgba(194,168,120,.12),transparent)}
.dkrow:hover .dka{transform:translateX(6px)}
@media(max-width:760px){.dklist{grid-template-columns:1fr}.dklist .dkrow:first-child{border-top:0}}
/* smooth hero -> content transition, readable marquee */
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,16,10,0),rgba(6,16,10,.92))}
.marq{background:rgba(6,16,10,.92)!important;border-color:rgba(194,168,120,.25)!important;position:relative;z-index:2}
.marq-t{color:#e3cfa6;text-shadow:none}
section.promo{position:relative}
section.promo:before{content:"";position:absolute;left:0;right:0;top:0;height:220px;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,16,10,.92),rgba(6,16,10,0))}
section.promo>.wrap{position:relative}
.hquick{margin-top:22px}
.hquick a{background:rgba(6,16,10,.45);backdrop-filter:blur(6px)}
.hpromo{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px;padding:8px 16px 8px 8px;border-radius:99px;background:rgba(6,16,10,.55);border:1px solid rgba(194,168,120,.5);backdrop-filter:blur(6px);font-size:14px;color:#fff;transition:.3s}
.hpromo b{color:var(--sand);font-weight:600}
.hpromo i{font-style:normal;color:var(--sand);transition:transform .3s}
.hpromo:hover{border-color:var(--sand)}
.hpromo:hover i{transform:translateX(5px)}


/* ===== v15: readability + bigger white headings ===== */
#bgveil{background:radial-gradient(130% 90% at 30% 50%,rgba(6,16,10,.62) 0%,rgba(6,16,10,.80) 70%,rgba(6,16,10,.90) 100%)!important}
body{font-size:17px;line-height:1.72}
h1,h2,h3,h4,.dark h2,.dark h3,.hs-head h2,.sec-head h2,h1.ph1.ph1,.dark h1.ph1.ph1,.hs-head h1.ph1.ph1,.sec-head h1.ph1.ph1{color:#fff!important;font-weight:600;letter-spacing:-.015em;
  text-shadow:0 2px 6px rgba(0,0,0,.55),0 4px 30px rgba(0,0,0,.5)}
h1{font-size:clamp(44px,7.4vw,92px)}
h2,
h1.ph1.ph1{font-size:clamp(36px,5.4vw,66px);line-height:1.06}
h3{font-size:clamp(24px,2.8vw,32px);font-weight:600}
.pillar:hover h3{color:var(--sand)!important}
.svt b,.prow .h,.deko-tile span,.hs-item .n{font-weight:600;color:#fff}
.svt b{font-size:clamp(24px,2.6vw,32px)}
p,.lead,.dark p,.dark .lead,.card p,.pillar p,.step p,.small,.cap,.note,.svt em,.prow .q{
  color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.7),0 2px 16px rgba(0,0,0,.55)}
.lead{font-size:clamp(17px,1.8vw,21px);line-height:1.6}
.card p,.pillar p,.step p,.note,.svt em{font-size:16px;line-height:1.65}
.small,.cap{font-size:14px}
.stmt p{font-weight:500}
.eyebrow{font-size:12px;font-weight:600;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.cline .v{font-size:18px}
.facts span{color:rgba(255,255,255,.9)!important;font-size:13px;font-weight:600;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.facts b{font-weight:600;text-shadow:0 2px 14px rgba(0,0,0,.5)}

/* ===== v16: problem section animations ===== */
.probc h2,

/* ===== v16: problem section animations ===== */
.probc h1.ph1.ph1{background:linear-gradient(100deg,#fff 0%,#fff 40%,#f3e2bb 50%,#fff 60%,#fff 100%);background-size:250% 100%;text-shadow:none!important;filter:drop-shadow(0 2px 10px rgba(0,0,0,.55));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-position:100% 0}
.probc.in h2,
.probc.in h1.ph1.ph1{animation:shine 3.2s ease .6s 1 forwards, shine 3.2s ease 6s infinite}
@keyframes shine{from{background-position:100% 0}to{background-position:-50% 0}}
.probc .lead{opacity:0;transform:translateY(16px);transition:opacity .8s .35s,transform .8s cubic-bezier(.16,.84,.28,1) .35s}
.probc.in .lead{opacity:1;transform:none}
.vs.reveal{transform:none!important}
.vs .vsi{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.16,.84,.28,1),box-shadow .4s,border-color .4s;backdrop-filter:blur(3px)}
.vs .vsi.bad{transform:translateX(-70px) rotate(-2deg)}
.vs .vsi.good{transform:translateX(70px) rotate(2deg);transition-delay:.5s}
.vs.in .vsi{opacity:1;transform:none}
.vs .vsmid{opacity:0;transition:opacity .6s .35s}
.vs.in .vsmid{opacity:1}
.vs.in .vsmid span{display:inline-block;animation:nudge 1.6s ease-in-out 1.2s infinite}
@keyframes nudge{0%,100%{transform:translateX(-6px);opacity:.6}50%{transform:translateX(8px);opacity:1}}
.vsi li{opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s}
.vs.in .vsi li{opacity:1;transform:none}
.vs.in .bad li:nth-child(1){transition-delay:.6s}.vs.in .bad li:nth-child(2){transition-delay:.8s}.vs.in .bad li:nth-child(3){transition-delay:1s}
.vs.in .good li:nth-child(1){transition-delay:1.1s}.vs.in .good li:nth-child(2){transition-delay:1.3s}.vs.in .good li:nth-child(3){transition-delay:1.5s}
.vsi li:before{display:inline-block;transform:scale(0);transition:transform .45s cubic-bezier(.3,1.6,.5,1)}
.vs.in .vsi li:before{transform:scale(1);transition-delay:inherit}
.vsi.bad:hover{transform:translateY(-4px)!important;box-shadow:0 20px 40px -20px rgba(224,128,112,.5);border-color:rgba(224,128,112,.6)}
.vsi.good:hover{transform:translateY(-4px)!important;box-shadow:0 20px 50px -18px rgba(194,168,120,.65)}
.vs.in .vsi.good{animation:glow 3s ease-in-out 2s infinite}
@keyframes glow{0%,100%{box-shadow:0 0 0 0 rgba(194,168,120,0)}50%{box-shadow:0 0 34px -4px rgba(194,168,120,.45)}}
.vs.in .vsi.good .vsk{animation:gshine 4s linear 2s infinite;background:linear-gradient(90deg,var(--sand) 0%,#fff3d6 50%,var(--sand) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@keyframes gshine{from{background-position:200% 0}to{background-position:0 0}}
.bigline.reveal{transform:translateY(30px) scale(.97);filter:blur(6px);transition:opacity 1.1s .2s,transform 1.1s cubic-bezier(.16,.84,.28,1) .2s,filter 1.1s .2s}
.bigline.reveal.in{transform:none;filter:none}
@media(prefers-reduced-motion:reduce){.vs .vsi,.vsi li,.probc .lead,.vs .vsmid{opacity:1!important;transform:none!important}}

/* ===== v18: solution section - text bound to photos ===== */
.sol-a,.sol-b{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.sol-b{grid-template-columns:1fr 1.15fr;margin-top:clamp(60px,8vw,120px)}
.sol-ph{position:relative}
.sol-ph .mtile{aspect-ratio:auto;height:clamp(420px,52vw,660px);border-radius:6px;box-shadow:0 40px 80px -40px rgba(0,0,0,.8)}
.sol-ph .mtile img{transition:transform 1.4s cubic-bezier(.16,.84,.28,1)}
.sol-ph:hover .mtile img{transform:scale(1.06)}
.sol-ph.reveal .mtile{clip-path:inset(0 0 100% 0);transition:clip-path 1.3s cubic-bezier(.16,.84,.28,1) var(--d,0ms)}
.sol-ph.reveal.in .mtile{clip-path:inset(0)}
.sol-badge{position:absolute;z-index:3;background:rgba(8,20,12,.72);backdrop-filter:blur(10px);border:1px solid rgba(194,168,120,.5);
  border-radius:6px;padding:14px 20px;box-shadow:0 20px 40px -20px rgba(0,0,0,.7);opacity:0;transform:translateY(20px);
  transition:opacity .8s,transform .8s cubic-bezier(.16,.84,.28,1)}
.sol-badge b{display:block;font-family:var(--serif);font-size:clamp(28px,3vw,40px);font-weight:600;color:var(--sand);line-height:1}
.sol-badge span{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-top:6px;font-weight:600}
.sol-badge.b1{right:-22px;top:12%}
.sol-badge.b2{left:-22px;bottom:10%}
.sol-ph.in .sol-badge{opacity:1;transform:none;animation:bfloat 5s ease-in-out 1.6s infinite}
.sol-ph.in .b1{transition-delay:.9s}.sol-ph.in .b2{transition-delay:1.2s;animation-delay:2.6s}
@keyframes bfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.sol-tx h2,
.sol-tx h1.ph1.ph1{font-size:clamp(38px,4.8vw,70px);margin:12px 0 22px}
.sol-tx .lead{max-width:none}
.sol-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.sol-chips span{border:1px solid rgba(194,168,120,.6);border-radius:999px;padding:7px 15px;font-size:13px;font-weight:600;color:#fff;background:rgba(8,20,12,.45)}
.sol-k{display:flex;align-items:baseline;gap:14px;font-family:var(--serif);font-size:clamp(28px,3.2vw,44px);font-weight:600;color:#fff;margin-bottom:18px;text-shadow:0 2px 20px rgba(0,0,0,.5)}
.sol-k i{font-style:normal;color:var(--sand);font-size:.6em}
.sol-list{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.2)}
.sol-list li{padding:13px 0 13px 30px;border-bottom:1px solid rgba(255,255,255,.2);position:relative;font-size:16px;font-weight:500;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.sol-list li:before{content:"✓";position:absolute;left:0;color:var(--sand);font-weight:700}
.sol-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.sol-pair .sol-ph:nth-child(2){margin-top:60px}
.sol-pair .mtile{height:clamp(320px,34vw,480px)}
.sol-cap{margin-top:12px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:#fff;padding-left:14px;border-left:2px solid var(--sand)}
@media(max-width:900px){
  .sol-a,.sol-b{grid-template-columns:1fr}
  .sol-b .sol-tx{order:0}
  .sol-ph .mtile{height:clamp(320px,90vw,480px)}
  .sol-pair .mtile{height:clamp(220px,60vw,340px)}
  .sol-badge.b1{right:10px}.sol-badge.b2{left:10px}
  .sol-pair .sol-ph:nth-child(2){margin-top:30px}
}

/* ===== v18: why section - cards + comparison table ===== */
#warum .mrow .mtile{aspect-ratio:4/5}
.why-h{font-size:clamp(34px,4.4vw,60px);margin:0 0 clamp(28px,3.5vw,44px);max-width:20ch}
.why3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.whyc{position:relative;padding:30px 28px 32px;border-radius:8px;background:rgba(8,20,12,.62);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.14);border-top:3px solid var(--sand);overflow:hidden;transition:transform .45s cubic-bezier(.16,.84,.28,1),box-shadow .45s,border-color .45s}
.whyc:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(0,0,0,.8);border-color:rgba(194,168,120,.6)}
.whyn{position:absolute;right:18px;top:6px;font-family:var(--serif);font-size:84px;font-weight:600;line-height:1;color:rgba(194,168,120,.22)}
.whyc h3{margin:6px 0 12px;position:relative;padding-right:70px}
.whyc p{margin:0;position:relative}
.cmpt{margin-top:clamp(40px,5vw,64px);border-radius:8px;overflow:hidden;background:rgba(8,20,12,.66);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14)}
.cmpt-r{display:grid;grid-template-columns:1fr 1.3fr 1.1fr;align-items:center;border-top:1px solid rgba(255,255,255,.1)}
.cmpt-r>span{padding:15px 22px;font-size:15.5px;color:#fff}
.cmpt-r .k{font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.cmpt-r .us{background:rgba(194,168,120,.14);font-weight:600;height:100%;display:flex;align-items:center;gap:10px}
.cmpt-r .them{color:rgba(255,255,255,.62);display:flex;align-items:center;gap:10px}
.cmpt-r i{font-style:normal;flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px}
.cmpt-r .us i{background:var(--sand);color:var(--ink)}
.cmpt-r .them i{background:rgba(224,128,112,.2);color:#e08070}
.cmpt-hd{border-top:0}
.cmpt-hd>span{padding:18px 22px;font-family:var(--serif);font-size:clamp(20px,2vw,26px);font-weight:600}
.cmpt-hd .us{background:var(--sand);color:var(--ink)}
.cmpt-hd>span:last-child{color:rgba(255,255,255,.6)}
.cmpt-r:not(.cmpt-hd){opacity:0;transform:translateX(-20px);transition:opacity .5s,transform .5s,background .3s;transition-delay:calc(var(--i)*90ms + .3s)}
.cmpt.in .cmpt-r{opacity:1;transform:none}
.cmpt-r:not(.cmpt-hd):hover{background:rgba(255,255,255,.05)}
@media(max-width:900px){.why3{grid-template-columns:1fr}}
@media(max-width:640px){
  .cmpt-r{grid-template-columns:1fr 1fr}
  .cmpt-r .k{grid-column:1/-1;padding-bottom:4px;background:rgba(255,255,255,.04)}
  .cmpt-hd>span:first-child{display:none}
  .cmpt-r>span{padding:11px 14px;font-size:14px}
}

/* ===== v18: compact price table ===== */
.plist{border-radius:8px;overflow:hidden;background:rgba(8,20,12,.62);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14)}
.plist .prow{padding:9px 22px!important;border-bottom:1px solid rgba(255,255,255,.08);transition:background .3s}
.plist .prow:nth-child(odd):not(.hd){background:rgba(255,255,255,.035)}
.plist .prow:hover{padding-left:22px!important;background:rgba(194,168,120,.14)!important;border-color:rgba(255,255,255,.08)}
.plist .prow.hd{background:var(--sand);color:var(--ink);font-weight:700;padding:12px 22px!important}
.plist .prow .h{font-size:clamp(18px,1.7vw,22px);font-weight:600}
.plist .prow .p{font-size:20px;font-weight:600;color:var(--sand)}
.plist .prow .q{font-size:13.5px;color:rgba(255,255,255,.6)}
.plist .prow.reveal{transform:none;transition:opacity .5s,background .3s}
@media(max-width:600px){.plist .prow{grid-template-columns:1fr 1fr!important;padding:9px 14px!important}}

/* ===== v19: bright promo ===== */
.promo .pbig{font-size:clamp(32px,3.6vw,52px)!important;line-height:1.08;max-width:18ch}
.pprice2{flex-wrap:nowrap}
@media(max-width:480px){.pprice2{flex-wrap:wrap;gap:10px}}
.pbox{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,4vw,60px);align-items:center;
  padding:clamp(26px,4vw,56px);border-radius:16px;isolation:isolate;
  background:linear-gradient(135deg,rgba(10,26,16,.9),rgba(12,28,16,.9) 55%,rgba(24,44,28,.9));
  box-shadow:0 40px 100px -40px rgba(0,0,0,.9),0 0 0 1px rgba(240,201,106,.35) inset}
.pbox:before{content:"";position:absolute;inset:-2px;border-radius:18px;z-index:-1;padding:2px;
  background:conic-gradient(from var(--pa,0deg),#f0c96a,#c9a25a,#f0c96a 30%,transparent 45%,transparent 70%,#f0c96a);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:pspin 6s linear infinite}
@property --pa{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes pspin{to{--pa:360deg}}
.pbox:after{content:"";position:absolute;right:-10%;top:-30%;width:60%;height:120%;z-index:-1;border-radius:50%;
  background:radial-gradient(circle,rgba(240,201,106,.28),transparent 65%);filter:blur(20px);animation:pglow 5s ease-in-out infinite alternate}
@keyframes pglow{to{transform:translate(-40px,30px) scale(1.15);opacity:.7}}
.ptags{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.tagp.hot{background:linear-gradient(90deg,#c9a25a,#f0c96a);color:#0E1F16;font-size:12.5px;padding:8px 16px;font-weight:800;box-shadow:0 6px 24px -6px rgba(201,162,90,.8);animation:tagb 2.2s ease-in-out infinite}
@keyframes tagb{50%{transform:scale(1.05)}}
.promo .pstock{margin-top:0;font-weight:600;font-size:13.5px;background:rgba(95,208,122,.14);border:1px solid rgba(95,208,122,.45);padding:6px 12px;border-radius:99px}
.promo .pbig{margin:18px 0 20px;font-weight:600}
.pprice2{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.pnew{font-family:var(--serif);font-weight:700;white-space:nowrap;font-size:clamp(52px,6vw,92px);line-height:.9;
  background:linear-gradient(100deg,#ffd97a 0%,#fff3c9 25%,#d9b56e 50%,#ffd97a 75%,#fff3c9 100%);background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none!important;
  filter:drop-shadow(0 6px 24px rgba(240,201,106,.45));animation:gshine 4s linear infinite}
.pnew small{font-size:.28em;margin-left:8px;-webkit-text-fill-color:rgba(255,255,255,.85)}
.pside{display:grid;gap:8px}
.pside s{font-family:var(--serif);font-size:clamp(26px,2.6vw,36px);color:rgba(255,255,255,.6);text-decoration-color:#f0c96a;text-decoration-thickness:3px}
.psave{background:#f0c96a;color:#0E1F16;font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:6px;transform:rotate(-3deg);box-shadow:0 8px 20px -8px rgba(240,201,106,.9)}
.pcd{margin-top:22px}
.pcd-l{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#f0c96a;margin-bottom:10px}
.pcd-g{display:flex;gap:10px}
.pcd-g div{min-width:70px;text-align:center;padding:10px 6px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(240,201,106,.35)}
.pcd-g b{display:block;font-family:var(--serif);font-size:34px;font-weight:700;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.pcd-g span{display:block;margin-top:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.pbar{margin-top:22px;max-width:420px}
.pbar-t{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:8px}
.pbar-t b{color:#f0c96a}
.pbar-b{height:8px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.pbar-b i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#f0c96a,#c9a25a);transition:width 1.8s cubic-bezier(.16,.84,.28,1) .4s;
  background-size:40px 40px;background-image:linear-gradient(45deg,rgba(255,255,255,.25) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.25) 75%,transparent 75%),linear-gradient(90deg,#f0c96a,#c9a25a);animation:pstripe 1s linear infinite}
@keyframes pstripe{to{background-position:40px 0,0 0}}
.pbox-l.in .pbar-b i{width:68%}
.pbtn{background:linear-gradient(90deg,#c9a25a,#f0c96a)!important;color:#0E1F16!important;font-weight:800;font-size:15px;padding:17px 32px;box-shadow:0 12px 34px -10px rgba(201,162,90,.9);animation:pbtn 2.4s ease-in-out infinite}
@keyframes pbtn{50%{box-shadow:0 12px 44px -6px rgba(201,162,90,1),0 0 0 6px rgba(201,162,90,.15)}}
.pbtn:before{animation:bshine 2.8s ease-in-out infinite}
@keyframes bshine{0%,60%{left:-140%}100%{left:150%}}
.promo .puntil{margin-top:16px;color:rgba(255,255,255,.75)!important;font-size:13.5px}
.ppics .mtile{border-radius:10px;box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.ppics .mtile:nth-of-type(2){transform:translateY(34px)}
.poff{width:128px!important;height:128px!important;top:-40px!important;right:-26px!important;background:radial-gradient(circle at 30% 30%,#ffe7a8,#b8893e)!important;color:#0E1F16!important;
  box-shadow:0 18px 40px -10px rgba(184,137,62,.9)!important;animation:poffp 2.6s ease-in-out infinite!important}
.poff:before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px dashed rgba(240,201,106,.8);animation:pspin2 12s linear infinite}
.poff b{font-size:34px;font-weight:800;font-family:var(--serif)}
@keyframes poffp{0%,100%{transform:rotate(-10deg) scale(1)}50%{transform:rotate(-4deg) scale(1.09)}}
@keyframes pspin2{to{transform:rotate(360deg)}}
@media(max-width:900px){.pbox{grid-template-columns:1fr}.ppics{margin-top:10px}.poff{width:96px!important;height:96px!important;right:-6px!important;top:-26px!important}.poff b{font-size:26px}}
@media(max-width:480px){.pcd-g div{min-width:0;flex:1}.pcd-g b{font-size:26px}.pbox{padding:22px 18px}.ppics .mtile:nth-of-type(2){transform:translateY(20px)}}

/* ===== v19: tech block redesign ===== */
.tech2{margin-top:clamp(70px,9vw,130px)}
.tech2-h{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(24px,4vw,70px);align-items:end;margin-bottom:clamp(26px,3.5vw,44px)}
.tech2-h .sol-k{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.05}
.tech2-h .lead{margin:0}
.tech2-g{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tcard{position:relative;border-radius:10px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.85)}
.tcard .mtile{aspect-ratio:4/5!important;height:auto!important;border-radius:0}
.tcard .mtile img,.tcard .mtile video{transition:transform 1.2s cubic-bezier(.16,.84,.28,1)}
.tcard:hover .mtile img,.tcard:hover .mtile video{transform:scale(1.07)}
.tcard-o{position:absolute;inset:auto 0 0 0;padding:70px 24px 24px;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,16,10,0),rgba(6,16,10,.75) 45%,rgba(6,16,10,.95))}
.tcard-n{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--sand);color:var(--ink);font-weight:700;font-size:14px;margin-bottom:12px}
.tcard-o h3{margin:0 0 8px;font-size:clamp(22px,2.2vw,28px)}
.tcard-o p{margin:0;font-size:15px}
.tcard:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--sand);transition:width .6s}
.tcard:hover:after{width:100%}
@media(max-width:900px){.tech2-h{grid-template-columns:1fr}.tech2-g{grid-template-columns:1fr}.tcard .mtile{aspect-ratio:4/3!important}}

/* ===== v19: premium "see for yourself" gallery ===== */
.lux-h{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,5vw,90px);align-items:end;margin-bottom:clamp(30px,4vw,54px)}
.lux-h h2,
.lux-h h1.ph1.ph1{font-size:clamp(38px,4.8vw,68px);margin:14px 0 0;line-height:1.02}
.lux-hr .lead{margin:0 0 22px;padding-left:22px;border-left:1px solid var(--sand)}
.lux-meta{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid rgba(194,168,120,.4);border-bottom:1px solid rgba(194,168,120,.4)}
.lux-meta span{flex:1 1 auto;padding:12px 14px;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:#f3e2bb;text-align:center}
.lux-meta span+span{border-left:1px solid rgba(194,168,120,.4)}
.lux-g{position:relative;display:grid;grid-template-columns:1.35fr 1fr .9fr;grid-template-rows:repeat(2,clamp(220px,19vw,300px));gap:14px}
.lx{position:relative;overflow:hidden;border-radius:4px;box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.lx.a{grid-row:span 2}.lx.c{grid-row:span 2;grid-column:3}.lx.b{grid-column:2}.lx.d{grid-column:2}
.lx .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0}
.lx .mtile img,.lx .mtile video{transition:transform 1.6s cubic-bezier(.16,.84,.28,1),filter 1s;filter:saturate(.92) contrast(1.04)}
.lx:hover .mtile img,.lx:hover .mtile video{transform:scale(1.06);filter:saturate(1.08) contrast(1.06)}
.lx:before{content:"";position:absolute;inset:12px;z-index:2;border:1px solid rgba(243,226,187,.0);pointer-events:none;transition:border-color .6s,inset .6s}
.lx:hover:before{inset:16px;border-color:rgba(243,226,187,.7)}
.lx:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,16,10,0) 55%,rgba(6,16,10,.85))}
.lx-c{position:absolute;left:24px;right:24px;bottom:22px;z-index:3;display:flex;align-items:baseline;gap:12px;pointer-events:none;
  font-family:var(--serif);font-size:clamp(18px,1.7vw,24px);font-weight:600;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.lx-c>span{flex:0 1 auto;min-width:0;line-height:1.2;text-wrap:balance}
.lx-c i{font-style:normal;font-family:var(--sans);font-size:11px;letter-spacing:.2em;color:var(--sand);font-weight:700}
.lx-c:after{content:"";flex:1;height:1px;background:rgba(243,226,187,.5);transform:scaleX(0);transform-origin:left;transition:transform .7s}
.lx:hover .lx-c:after{transform:scaleX(1)}
.lux-g.reveal .lx{clip-path:inset(100% 0 0 0);transition:clip-path 1.3s cubic-bezier(.16,.84,.28,1)}
.lux-g.reveal.in .lx{clip-path:inset(0)}
.lux-g .lx.b{transition-delay:.15s}.lux-g .lx.d{transition-delay:.3s}.lux-g .lx.c{transition-delay:.45s}
.lux-g.reveal{transform:none!important}
.lux-seal{position:absolute;z-index:5;right:-30px;top:-50px;width:124px;height:124px;border-radius:50%;
  background:rgba(8,20,12,.82);backdrop-filter:blur(8px);border:1px solid rgba(243,226,187,.55);display:grid;place-items:center;box-shadow:0 20px 50px -15px rgba(0,0,0,.9)}
.lux-seal svg{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);animation:pspin2 18s linear infinite}
.lux-seal text{fill:#f3e2bb;font-size:9.6px;letter-spacing:2.2px;font-family:var(--sans);font-weight:600}
.lux-seal b{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--sand)}
@media(max-width:900px){
  .lux-h{grid-template-columns:1fr}
  .lux-g{grid-template-columns:1fr 1fr;grid-template-rows:260px 200px 200px}
  .lx.a{grid-column:1/-1;grid-row:auto}.lx.b{grid-column:1}.lx.d{grid-column:1}.lx.c{grid-column:2;grid-row:2/span 2}
  .lux-seal{left:auto;right:12px;top:12px;margin:0;width:96px;height:96px}
  .lux-seal b{font-size:20px}
}

/* ===== v19b: why cards / comparison / process ===== */
.whyc{transform-style:preserve-3d;background:linear-gradient(160deg,rgba(20,40,26,.85),rgba(6,16,10,.85))!important;border-top:1px solid rgba(255,255,255,.14)!important;padding:34px 30px 38px!important}
.whyc.reveal{opacity:0;transform:perspective(900px) rotateX(18deg) translateY(50px)!important;transition:opacity .9s var(--d),transform 1.1s cubic-bezier(.16,.84,.28,1) var(--d)!important}
.whyc.reveal.in{opacity:1;transform:none!important}
.whyc.reveal.in:hover{transform:translateY(-8px)!important;transition-delay:0s!important}
.whyc:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(240,201,106,.22),transparent 45%);opacity:0;transition:opacity .4s}
.whyc:hover:before{opacity:1}
.whyc:after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;transform:skewX(-20deg);pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transition:left .9s}
.whyc:hover:after{left:160%}
.whyi{width:58px;height:58px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;position:relative;
  background:linear-gradient(135deg,#f0c96a,#b8893e);box-shadow:0 12px 30px -10px rgba(240,201,106,.7)}
.whyi svg{width:28px;height:28px;fill:none;stroke:#0E1F16;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:80;stroke-dashoffset:80;transition:stroke-dashoffset 1.6s ease calc(var(--d) + .5s)}
.whyc.in .whyi svg{stroke-dashoffset:0}
.whyc.in .whyi{animation:ifloat 4s ease-in-out infinite}
@keyframes ifloat{50%{transform:translateY(-5px) rotate(-4deg)}}
.whyn{font-size:110px!important;top:-6px!important;background:linear-gradient(180deg,rgba(240,201,106,.35),rgba(240,201,106,0));-webkit-background-clip:text;background-clip:text;color:transparent!important}
.whyl{position:absolute;left:0;bottom:0;height:3px;width:0;background:linear-gradient(90deg,#f0c96a,#b8893e);transition:width 1.2s cubic-bezier(.16,.84,.28,1) calc(var(--d) + .4s)}
.whyc.in .whyl{width:100%}
.whyc h3{padding-right:0!important}

.cmp2{position:relative;display:grid;grid-template-columns:1fr 1.25fr 1.05fr;gap:0;margin-top:clamp(50px,6vw,80px);align-items:stretch}
.cmp2.reveal{transform:none!important}
.cmp2-col{display:flex;flex-direction:column}
.cmp2-hd{height:96px;display:flex;flex-direction:column;justify-content:center;padding:0 26px}
.cmp2-hd b{font-family:var(--serif);font-size:clamp(22px,2.2vw,30px);font-weight:600}
.cmp2-hd span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin-top:4px;opacity:.75;font-weight:600}
.cmp2-c{height:62px;display:flex;align-items:center;gap:12px;padding:0 26px;font-size:15.5px;border-top:1px solid rgba(255,255,255,.1);color:#fff}
.cmp2-c .m{display:none}
.cmp2-col.lbl .cmp2-c{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#f3e2bb;
  opacity:0;transform:translateX(-30px);transition:.7s cubic-bezier(.16,.84,.28,1)}
.cmp2.in .lbl .cmp2-c{opacity:1;transform:none}
.cmp2-col.us{position:relative;z-index:2;border-radius:14px;margin:-18px 0;padding-bottom:18px;
  background:linear-gradient(180deg,rgba(60,48,20,.95),rgba(14,31,22,.95));
  box-shadow:0 0 0 1px rgba(240,201,106,.65),0 40px 90px -30px rgba(0,0,0,.95),0 0 60px -10px rgba(240,201,106,.35);
  opacity:0;transform:translateY(60px) scale(.96);transition:opacity 1s,transform 1.2s cubic-bezier(.16,.84,.28,1)}
.cmp2.in .us{opacity:1;transform:none;animation:usglow 4s ease-in-out 1.5s infinite}
@keyframes usglow{50%{box-shadow:0 0 0 1px rgba(240,201,106,.9),0 40px 90px -30px rgba(0,0,0,.95),0 0 90px -5px rgba(240,201,106,.55)}}
.cmp2-col.us .cmp2-hd{height:114px;padding-top:18px;border-bottom:0}
.cmp2-col.us .cmp2-hd b{background:linear-gradient(90deg,#f0c96a,#fff3d6,#f0c96a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gshine 4s linear infinite}
.cmp2-col.us .cmp2-c{font-weight:600;border-top-color:rgba(240,201,106,.2)}
.cmp2-rib{position:absolute;top:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:linear-gradient(90deg,#f0c96a,#d9b56e);color:#0E1F16;
  font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:7px 16px;border-radius:99px;box-shadow:0 10px 24px -8px rgba(240,201,106,.8)}
.cmp2-col.them{background:rgba(6,16,10,.7);backdrop-filter:blur(10px);border-radius:0 12px 12px 0;border:1px solid rgba(255,255,255,.1);border-left:0}
.cmp2-col.lbl{background:rgba(6,16,10,.7);backdrop-filter:blur(10px);border-radius:12px 0 0 12px;border:1px solid rgba(255,255,255,.1);border-right:0}
.cmp2-col.them .cmp2-hd b{color:rgba(255,255,255,.65)}
.cmp2-col.them .cmp2-c{color:rgba(255,255,255,.55);opacity:0;transition:opacity .6s calc(var(--i)*.12s + .9s)}
.cmp2.in .them .cmp2-c{opacity:1}
.cmp2-c i{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px}
.cmp2-c i.ok{background:linear-gradient(135deg,#f0c96a,#b8893e);transform:scale(0);transition:transform .5s cubic-bezier(.3,1.7,.5,1) calc(var(--i)*.12s + .7s)}
.cmp2.in .cmp2-c i.ok{transform:scale(1)}
.cmp2-c i.ok svg{width:16px;height:16px;fill:none;stroke:#0E1F16;stroke-width:3;stroke-linecap:round;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .5s calc(var(--i)*.12s + 1s)}
.cmp2.in .cmp2-c i.ok svg{stroke-dashoffset:0}
.cmp2-c i.no{background:rgba(224,128,112,.15);color:#e08070}
.cmp2-col .cmp2-c{transition-delay:calc(var(--i,0)*.1s)}
.cmp2-vs{position:absolute;z-index:3;top:34px;left:calc(44.3% + 0px);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  font-family:var(--serif);font-weight:700;font-size:15px;color:#f0c96a;background:#0E1F16;border:1px solid rgba(240,201,106,.6);display:none}
.cmp2-c{transition:background .3s}
.cmp2:hover .cmp2-c:hover{background:rgba(255,255,255,.04)}
@media(max-width:760px){
  .cmp2{grid-template-columns:1fr;gap:28px}
  .cmp2-col.lbl{display:none}
  .cmp2-col.us{margin:0;padding-bottom:6px}
  .cmp2-col.them{border-radius:12px;border-left:1px solid rgba(255,255,255,.1)}
  .cmp2-c{height:auto;min-height:56px;flex-wrap:wrap;padding:10px 20px}
  .cmp2-c .m{display:block;width:100%;font-style:normal;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.65;padding-left:38px;margin-bottom:-6px;order:-1}
}

@media(max-width:900px){.lx-c{left:12px;right:12px;bottom:12px;font-size:15px;line-height:1.2}.lx-c i{display:none}.lx:before{display:none}}
/* process timeline */
.proc{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,26px);padding-top:40px}
.proc-line{position:absolute;left:0;right:0;top:18px;height:2px;background:rgba(255,255,255,.15)}
.proc-line i{display:block;height:100%;width:0;background:linear-gradient(90deg,#f0c96a,#b8893e);box-shadow:0 0 14px rgba(240,201,106,.8);transition:width 2.4s cubic-bezier(.4,0,.2,1) .3s}
.proc:has(.pstep.in) .proc-line i{width:100%}
.pstep{position:relative}
.pstep.reveal{opacity:0;transform:translateY(60px)!important;transition:opacity .9s var(--d),transform 1.1s cubic-bezier(.16,.84,.28,1) var(--d)!important}
.pstep.reveal.in{opacity:1;transform:none!important}
.pdot{position:absolute;top:-40px;left:0;width:38px;height:38px;border-radius:50%;background:#0E1F16;border:2px solid #f0c96a;display:grid;place-items:center;z-index:2;
  box-shadow:0 0 0 6px rgba(240,201,106,.12)}
.pdot span{font-size:12px;font-weight:800;color:#f0c96a}
.pstep.in .pdot{animation:dotp 2.4s ease-out calc(var(--d) + .6s) infinite}
@keyframes dotp{0%{box-shadow:0 0 0 0 rgba(240,201,106,.6)}70%,100%{box-shadow:0 0 0 16px rgba(240,201,106,0)}}
.pph{position:relative;margin-top:22px;aspect-ratio:4/5;border-radius:14px;overflow:hidden;box-shadow:0 40px 70px -35px rgba(0,0,0,.95);
  clip-path:inset(0 0 100% 0 round 14px);transition:clip-path 1.3s cubic-bezier(.16,.84,.28,1) calc(var(--d) + .2s)}
.pstep.in .pph{clip-path:inset(0 0 0 0 round 14px)}
.pph img,.pph video{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.16,.84,.28,1)}
.pstep:hover .pph img,.pstep:hover .pph video{transform:scale(1.08)}
.pph:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,16,10,.8));pointer-events:none}
.pph:before{content:"";position:absolute;inset:10px;z-index:2;border:1px solid rgba(243,226,187,0);border-radius:8px;transition:.6s;pointer-events:none}
.pstep:hover .pph:before{border-color:rgba(243,226,187,.7);inset:14px}
.pbig-n{position:absolute;z-index:2;right:16px;bottom:4px;font-family:var(--serif);font-size:84px;font-weight:700;line-height:1;
  background:linear-gradient(180deg,#fff3d6,#f0c96a);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9;
  transform:translateY(30px);transition:transform .8s cubic-bezier(.16,.84,.28,1)}
.pstep:hover .pbig-n{transform:translateY(0)}
.pstep.in .pbig-n{transform:translateY(0);transition-delay:calc(var(--d) + .9s)}
.pbd{padding:22px 4px 0;position:relative}
.pbd:before{content:"";display:block;width:36px;height:2px;background:#f0c96a;margin-bottom:16px;transition:width .6s}
.pstep:hover .pbd:before{width:100%}
.pbd h3{margin:0 0 10px;font-size:clamp(22px,2vw,28px)}
.pbd p{margin:0;font-size:15px}
@media(max-width:1000px){.proc{grid-template-columns:1fr 1fr;row-gap:60px}.proc-line{display:none}.pdot{top:-18px;left:12px}}
@media(max-width:560px){.proc{grid-template-columns:1fr}.pph{aspect-ratio:4/3}}

/* ===== v20: calm promo, collages, animated text ===== */
.pbox:before,.pbox:after{display:none!important}
.pbox{box-shadow:0 40px 100px -40px rgba(0,0,0,.9),0 0 0 1px rgba(240,201,106,.4) inset!important;grid-template-columns:1fr 1.05fr!important}
.tagp.hot,.pbtn,.pnew{animation:none!important}
.tagp.hot{box-shadow:none!important}
.pnew{filter:none!important;background:none!important;-webkit-text-fill-color:#f0c96a!important;color:#f0c96a}
.pbtn{box-shadow:0 12px 30px -14px rgba(0,0,0,.8)!important}
.pbtn:before{animation:none!important}
.pbar-b i{background-image:none!important;background:#f0c96a!important;animation:none!important}
.promo .pstock:before{animation:none!important}

.ppics2{position:relative;height:clamp(460px,44vw,620px)}
.ppics2.reveal{transform:none!important}
.pp-main,.pp-sub{position:absolute;overflow:hidden;border-radius:6px;box-shadow:0 40px 80px -30px rgba(0,0,0,.95)}
.pp-main{left:0;top:0;width:72%;height:88%}
.pp-sub{right:0;bottom:0;width:46%;height:52%;border:6px solid #0E1F16;border-radius:8px}
.pp-main .mtile,.pp-sub .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0;transform:none!important}
.pp-main img,.pp-sub img{transition:transform 1.6s cubic-bezier(.16,.84,.28,1)}
.ppics2:hover .pp-main img{transform:scale(1.05)}
.ppics2:hover .pp-sub img{transform:scale(1.08)}
.pp-main{clip-path:inset(0 100% 0 0);transition:clip-path 1.4s cubic-bezier(.77,0,.18,1)}
.pp-sub{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .5s}
.ppics2.in .pp-main,.ppics2.in .pp-sub{clip-path:inset(0)}
.pp-frame{position:absolute;left:24px;top:24px;width:72%;height:88%;border:1px solid rgba(240,201,106,.6);border-radius:6px;z-index:-1;
  opacity:0;transform:translate(-24px,-24px);transition:transform 1.4s cubic-bezier(.16,.84,.28,1) .6s,opacity .8s .6s}
.ppics2.in .pp-frame{opacity:1;transform:none}
.poff2{position:absolute;right:6%;top:6%;z-index:4;width:112px;height:112px;border-radius:50%;background:#f0c96a;color:#0E1F16;
  display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 40px -14px rgba(0,0,0,.8);
  transform:scale(0) rotate(-30deg);transition:transform .8s cubic-bezier(.3,1.5,.5,1) 1.2s}
.ppics2.in .poff2{transform:rotate(-8deg)}
.poff2 small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.poff2 b{font-family:var(--serif);font-size:34px;font-weight:700;line-height:1}
.pp-tag{position:absolute;left:-18px;bottom:16%;z-index:4;background:rgba(8,20,12,.9);border-left:3px solid #f0c96a;padding:12px 18px;
  opacity:0;transform:translateX(-30px);transition:.8s cubic-bezier(.16,.84,.28,1) 1.4s}
.ppics2.in .pp-tag{opacity:1;transform:none}
.pp-tag b{display:block;font-family:var(--serif);font-size:24px;color:#fff}
.pp-tag span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#f3e2bb;font-weight:600}
.poff{display:none!important}

.ab-vis{position:relative;height:clamp(520px,50vw,700px)}
.ab-vis.reveal{transform:none!important}
.ab-main{position:absolute;right:0;top:0;width:80%;height:86%;overflow:hidden;border-radius:6px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95);
  clip-path:inset(0 0 100% 0);transition:clip-path 1.5s cubic-bezier(.77,0,.18,1)}
.ab-sub{position:absolute;left:0;bottom:0;width:42%;height:44%;overflow:hidden;border-radius:6px;border:6px solid #0E1F16;box-shadow:0 30px 60px -20px rgba(0,0,0,.95);
  clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .6s}
.ab-vis.in .ab-main,.ab-vis.in .ab-sub{clip-path:inset(0)}
.ab-main .mtile,.ab-sub .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0}
.ab-main img{transform:scale(1.25);transition:transform 2.4s cubic-bezier(.16,.84,.28,1)}
.ab-vis.in .ab-main img{transform:scale(1.02)}
.ab-vis:hover .ab-main img{transform:scale(1.07)}
.ab-sub img{transition:transform 1.4s}
.ab-vis:hover .ab-sub img{transform:scale(1.1)}
.ab-frame{position:absolute;right:-22px;top:22px;width:80%;height:86%;border:1px solid rgba(240,201,106,.55);border-radius:6px;z-index:-1;
  opacity:0;transform:translate(22px,-22px);transition:1.4s cubic-bezier(.16,.84,.28,1) .7s}
.ab-vis.in .ab-frame{opacity:1;transform:none}
.ab-stat{position:absolute;right:-14px;bottom:4%;z-index:3;background:#f0c96a;color:#0E1F16;padding:18px 24px;border-radius:4px;box-shadow:0 24px 50px -20px rgba(0,0,0,.9);
  opacity:0;transform:translateY(30px);transition:.9s cubic-bezier(.16,.84,.28,1) 1.1s}
.ab-vis.in .ab-stat{opacity:1;transform:none}
.ab-stat b{display:block;font-family:var(--serif);font-size:36px;font-weight:700;line-height:1}
.ab-stat span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.ab-cap{position:absolute;left:4%;top:8%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:#f3e2bb}
@media(max-width:980px){.ab-vis{height:clamp(420px,110vw,560px)}.ab-frame{right:0}.ab-stat{right:8px}.ppics2{height:clamp(380px,100vw,520px);margin-top:10px}.pp-tag{left:0}}

@media(max-width:900px){.pbox{grid-template-columns:1fr!important}.ab-cap{display:none}.pp-tag b{font-size:18px}.poff2{width:88px;height:88px}.poff2 b{font-size:26px}}
/* animated text */
.tw{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}
.tw>span{display:inline-block;transform:translateY(110%);opacity:0;transition:transform .9s cubic-bezier(.16,.84,.28,1),opacity .6s;transition-delay:calc(var(--w)*45ms)}
.tx-in .tw>span{transform:none;opacity:1}
.tl{opacity:0;filter:blur(8px);transform:translateY(14px);transition:opacity 1s,filter 1s,transform 1s cubic-bezier(.16,.84,.28,1);transition-delay:.25s}
.tl.tx-in{opacity:1;filter:none;transform:none}
@media(prefers-reduced-motion:reduce){.tw>span,.tl{opacity:1!important;transform:none!important;filter:none!important}}

/* ===== v21 ===== */
.sol-cta{margin-top:26px}
/* tech cards: aligned text */
.tech2-h{align-items:center!important}
.tech2-h .lead{max-width:56ch}
.tcard-o{top:auto;height:52%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 24px 26px!important}
.tcard-o h3{min-height:1.2em}
.tcard-o p{min-height:3.2em}
@media(max-width:900px){.tcard-o{height:auto;padding-top:80px!important}.tcard-o p{min-height:0}}
/* why cards: real photo */
.whyi{display:none!important}
.whyc{padding:0 0 34px!important}
.whyc>h3,.whyc>p{margin-left:30px!important;margin-right:30px!important}
.whyph{height:190px;overflow:hidden;margin-bottom:24px;position:relative}
.whyph:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(8,20,12,.95))}
.whyph img{width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 1.6s cubic-bezier(.16,.84,.28,1)}
.whyc.in .whyph img{transform:scale(1.02)}
.whyc:hover .whyph img{transform:scale(1.1)}
.whyn{top:130px!important;right:22px!important;z-index:2;font-size:80px!important;background:none!important;color:transparent!important;-webkit-text-stroke:1px rgba(240,201,106,.8)}
.whyc:before{display:none}
.tech2-h .sol-k{display:block!important}
.tech2-h .sol-k i{display:block;font-size:14px;letter-spacing:.2em;margin-bottom:10px;font-family:var(--sans);font-weight:700}
@media(max-width:600px){.svi .sva{display:none!important}.svi:hover .svt b,.svi:hover .svt em{transform:none}}
/* services hover */
.svlist{position:relative}
.svi{position:relative;overflow:hidden;isolation:isolate;padding-right:14px!important}
.svi:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(194,168,120,.95),rgba(194,168,120,.75));transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.77,0,.18,1)}
.svi:hover:before{transform:scaleX(1)}
.svi:hover{background:none!important;padding-left:24px!important}
.svi .svt b,.svi .svt em,.svi .svn{transition:color .4s,transform .5s cubic-bezier(.16,.84,.28,1)}
.svi:hover .svt b{color:#0E1F16!important;transform:translateX(10px);text-shadow:none}
.svi:hover .svt em{color:rgba(14,31,22,.85)!important;text-shadow:none!important;transform:translateX(10px)}
.svi:hover .svn{color:#0E1F16}
.svi img{transition:transform .6s cubic-bezier(.16,.84,.28,1),border-radius .6s!important}
.svi:hover img{transform:scale(1.12) rotate(-3deg)!important;border-radius:50%}
.sva{width:48px;height:48px;border-radius:50%;border:1px solid rgba(194,168,120,.6);display:grid!important;place-items:center;transition:all .5s!important}
.svi:hover .sva{background:#0E1F16;color:#f0c96a;border-color:#0E1F16;transform:rotate(-45deg)!important}
.svprev{position:fixed;left:0;top:0;z-index:150;width:300px;height:210px;border-radius:8px;overflow:hidden;pointer-events:none;
  opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(-6deg);transition:opacity .35s,transform .45s cubic-bezier(.16,.84,.28,1);box-shadow:0 30px 60px -20px rgba(0,0,0,.9)}
.svprev.on{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-3deg)}
.svprev img{width:100%;height:100%;object-fit:cover}
@media(hover:none){.svprev{display:none}}
/* carousel */
.lg-view{overflow:hidden!important;padding:50px 0}
.lg-track{animation:lgmove 70s linear infinite!important}
.lg-view:hover .lg-track{animation-play-state:paused!important}
.lg-item{position:relative;border-radius:10px!important;transition:transform .7s cubic-bezier(.16,.84,.28,1),box-shadow .7s,filter .7s;box-shadow:0 30px 60px -30px rgba(0,0,0,.9);transform:rotate(var(--r,0deg))}
.lg-item:nth-child(3n+1){--r:-2deg}.lg-item:nth-child(3n+2){--r:1.5deg}
.lg-view:hover .lg-item{filter:brightness(.45) saturate(.6)}
.lg-view .lg-item:hover{filter:none;transform:rotate(0) scale(1.12) translateY(-10px);z-index:3;box-shadow:0 50px 90px -30px rgba(0,0,0,1),0 0 0 2px #f0c96a}
.lg-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(6,16,10,.7));pointer-events:none}
.lg-plus{position:absolute;z-index:2;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:#f0c96a;color:#0E1F16;
  display:grid;place-items:center;font-size:32px;font-weight:300;transform:scale(0);transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.lg-item:hover .lg-plus{transform:scale(1)}
@media(prefers-reduced-motion:reduce){.lg-track{animation:none!important}.lg-view{overflow-x:auto!important}}
/* CTA */
.cta2-box{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,80px);align-items:center;padding:clamp(28px,4.5vw,64px);border-radius:16px;
  background:linear-gradient(135deg,rgba(10,26,16,.92),rgba(24,44,28,.9));box-shadow:0 60px 120px -50px rgba(0,0,0,.95),0 0 0 1px rgba(240,201,106,.35) inset}
.cta2-l h2,
.cta2-l h1.ph1.ph1{font-size:clamp(40px,5vw,72px);margin:12px 0 18px}
.cta2-steps{list-style:none;margin:28px 0 30px;padding:0;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.12)}
.cta2-steps li{display:flex;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12);opacity:0;transform:translateX(-24px);
  transition:opacity .6s calc(var(--i)*.15s + .4s),transform .6s calc(var(--i)*.15s + .4s),padding .4s}
.cta2-l.in .cta2-steps li{opacity:1;transform:none}
.cta2-steps li:hover{padding-left:10px}
.cta2-steps span{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid #f0c96a;display:grid;place-items:center;color:#f0c96a;font-weight:700;font-size:13px;transition:.4s}
.cta2-steps li:hover span{background:#f0c96a;color:#0E1F16}
.cta2-steps b{display:block;font-family:var(--serif);font-size:22px;font-weight:600;color:#fff}
.cta2-steps em{font-style:normal;font-size:14.5px;color:rgba(255,255,255,.8)}
.cta2-main{font-size:15px;padding:17px 32px;font-weight:700}
.cta2-trust{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px}
.cta2-trust span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:#f3e2bb;display:flex;align-items:center;gap:8px}
.cta2-trust span:before{content:"✓";color:#f0c96a}
.cta2-r{position:relative;height:clamp(460px,44vw,620px)}
.cta2-r.reveal{transform:none!important}
.cta2-ph{position:absolute;overflow:hidden;border-radius:8px;box-shadow:0 40px 80px -30px rgba(0,0,0,.95)}
.cta2-ph .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0}
.cta2-ph.a{right:0;top:0;width:74%;height:78%;clip-path:inset(0 0 100% 0);transition:clip-path 1.4s cubic-bezier(.77,0,.18,1)}
.cta2-ph.b{left:0;bottom:6%;width:44%;height:46%;border:6px solid #0E1F16;clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .5s}
.cta2-r.in .cta2-ph{clip-path:inset(0)}
.cta2-ph img{transition:transform 1.4s}
.cta2-ph:hover img{transform:scale(1.07)}
.cta2-card{position:absolute;right:4%;bottom:0;z-index:3;display:flex;gap:14px;align-items:center;padding:14px 20px 14px 14px;border-radius:12px;
  background:rgba(8,20,12,.94);border:1px solid rgba(240,201,106,.45);box-shadow:0 24px 50px -20px rgba(0,0,0,.9);
  opacity:0;transform:translateY(30px);transition:.9s cubic-bezier(.16,.84,.28,1) 1.1s}
.cta2-r.in .cta2-card{opacity:1;transform:none}
.cta2-card img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid #f0c96a}
.cta2-card b{display:block;font-family:var(--serif);font-size:19px;color:#fff}
.cta2-card span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#f3e2bb;font-weight:600}
.cta2-card a{display:inline-block;margin-top:4px;font-size:13px;font-weight:700;color:#5fd07a}
@media(max-width:900px){.cta2-box{grid-template-columns:1fr}.cta2-r{height:clamp(400px,105vw,520px)}}

/* ===== v22: inner pages premium ===== */
.phero{min-height:clamp(560px,88vh,860px)!important;align-items:center!important;padding:130px 0 60px!important}
.phg{display:grid;grid-template-columns:1.05fr 1fr;}
.phg:has(> .phl:only-child){grid-template-columns:minmax(0,820px)}
.phg{gap:clamp(30px,5vw,80px);align-items:center}
.phl .sec-head h2,
.phl .sec-head h1.ph1.ph1{font-size:clamp(52px,7.6vw,112px)!important;line-height:.98}
.phv{position:relative;height:clamp(420px,46vw,620px)}
.phv.reveal{transform:none!important}
.phv-a,.phv-b{position:absolute;overflow:hidden;border-radius:8px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95)}
.phv-a{right:0;top:0;width:78%;height:82%;clip-path:inset(0 0 100% 0);transition:clip-path 1.5s cubic-bezier(.77,0,.18,1) .2s}
.phv-b{left:0;bottom:0;width:44%;height:46%;border:6px solid #0E1F16;clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .8s}
.phv.in .phv-a,.phv.in .phv-b{clip-path:inset(0)}
.phv .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0}
.phv-a img{transform:scale(1.25);transition:transform 2.6s cubic-bezier(.16,.84,.28,1)}
.phv.in .phv-a img{transform:scale(1.02)}
.phv-f{position:absolute;right:-20px;top:20px;width:78%;height:82%;border:1px solid rgba(240,201,106,.55);border-radius:8px;z-index:-1;opacity:0;transform:translate(20px,-20px);transition:1.4s cubic-bezier(.16,.84,.28,1) 1s}
.phv.in .phv-f{opacity:1;transform:none}
.phv-s{position:absolute;right:-12px;bottom:10%;z-index:3;background:#f0c96a;color:#0E1F16;padding:16px 22px;border-radius:4px;box-shadow:0 24px 50px -20px rgba(0,0,0,.9);opacity:0;transform:translateY(30px);transition:.9s cubic-bezier(.16,.84,.28,1) 1.5s}
.phv.in .phv-s{opacity:1;transform:none}
.phv-s b{display:block;font-family:var(--serif);font-size:34px;font-weight:700;line-height:1}
.phv-s span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.chips a,.chips button{border-color:rgba(240,201,106,.5)!important;background:rgba(8,20,12,.5)!important;backdrop-filter:blur(6px);padding:10px 18px!important;font-weight:600;position:relative;overflow:hidden;isolation:isolate}
.chips a:before,.chips button:before{content:"";position:absolute;inset:0;z-index:-1;background:#f0c96a;transform:translateY(101%);transition:transform .45s cubic-bezier(.77,0,.18,1)}
.chips a:hover,.chips button:hover,.chips button.on{color:#0E1F16!important;border-color:#f0c96a!important}
.chips a:hover:before,.chips button:hover:before,.chips button.on:before{transform:none}
@media(max-width:900px){.phg{grid-template-columns:1fr}.phv{height:clamp(340px,95vw,480px)}.phv-f{right:0}.phv-s{right:8px}.phero{min-height:0!important}}

@media(max-width:700px){.split .figure.shown{outline-offset:8px}.kpanel .cline{flex-direction:column;gap:4px}.kpanel{padding:22px 18px}}
/* duo collage */
.duo{position:relative;display:block!important;height:clamp(440px,44vw,620px)}
.duo.reveal{transform:none!important}
.duo .mc{font-size:14px!important;left:12px!important;right:12px!important}
.duo>.mtile{position:absolute!important;aspect-ratio:auto!important;height:auto!important;border-radius:8px;box-shadow:0 40px 80px -30px rgba(0,0,0,.95)}
.duo>.mtile:first-child{right:0;top:0;width:76%;height:84%!important;clip-path:inset(0 0 100% 0);transition:clip-path 1.4s cubic-bezier(.77,0,.18,1)}
.duo>.mtile:nth-child(2){left:0;bottom:0;width:46%;height:50%!important;border:6px solid #0E1F16;z-index:2;clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .5s}
.duo.in>.mtile{clip-path:inset(0)}
.duo:before{content:"";position:absolute;right:-18px;top:18px;width:76%;height:84%;border:1px solid rgba(240,201,106,.5);border-radius:8px;opacity:0;transform:translate(18px,-18px);transition:1.3s cubic-bezier(.16,.84,.28,1) .7s}
.duo.in:before{opacity:1;transform:none}
.duo .mtile img,.duo .mtile video{transition:transform 1.4s cubic-bezier(.16,.84,.28,1)}
.duo .mtile:hover img,.duo .mtile:hover video{transform:scale(1.07)}
.topic{grid-template-columns:1fr 1.1fr!important;border-top:1px solid rgba(240,201,106,.25)!important}
.topic.rev>*:first-child{order:2!important}
.topic .num{font-family:var(--serif);font-size:clamp(60px,7vw,100px)!important;line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(240,201,106,.8)}
@media(max-width:900px){.topic{grid-template-columns:1fr!important}.topic.rev>*:first-child{order:0!important}.duo{height:clamp(340px,95vw,480px)}.duo:before{right:0}}

/* media rows */
.mrow .mtile{border-radius:10px!important;box-shadow:0 30px 60px -30px rgba(0,0,0,.9);transition:transform .7s cubic-bezier(.16,.84,.28,1),filter .6s,box-shadow .6s}
.mrow:hover .mtile{filter:brightness(.5) saturate(.7)}
.mrow .mtile:hover{filter:none;transform:translateY(-10px) scale(1.03);box-shadow:0 50px 90px -30px rgba(0,0,0,1),0 0 0 2px #f0c96a;z-index:2}
.mrow.reveal{transform:none!important}
.mrow.reveal .mtile{opacity:0;transform:translateY(60px);transition:opacity .9s,transform 1.1s cubic-bezier(.16,.84,.28,1),filter .6s,box-shadow .6s}
.mrow.reveal .mtile:nth-child(2){transition-delay:.12s}.mrow.reveal .mtile:nth-child(3){transition-delay:.24s}.mrow.reveal .mtile:nth-child(4){transition-delay:.36s}
.mrow.reveal.in .mtile{opacity:1;transform:none}
.mrow.reveal.in .mtile:hover{transform:translateY(-10px) scale(1.03);transition-delay:0s}
.mc{font-family:var(--serif)!important;font-weight:600;font-size:18px!important}

/* figures in splits */
.split .figure{overflow:hidden!important;border-radius:8px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95);outline:1px solid rgba(240,201,106,0);outline-offset:0;transition:outline-offset 1.2s cubic-bezier(.16,.84,.28,1) .6s,outline-color 1s .6s}
.split .figure.shown{outline-color:rgba(240,201,106,.5);outline-offset:16px}
.split .figure img{border-radius:8px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95)}
.split .figure:before{display:none;content:"";position:absolute;inset:0;border:1px solid rgba(240,201,106,.5);border-radius:8px;transform:translate(0,0);opacity:0;transition:1.3s cubic-bezier(.16,.84,.28,1) .6s;z-index:-1}
.split .figure.shown:before{transform:translate(20px,-20px);opacity:1}
.split .figure:hover img{transform:scale(1.03)!important}
.sort-no{background:linear-gradient(0deg,#f0c96a 50%,transparent 50%);background-size:100% 200%;background-position:0 0;-webkit-background-clip:text;background-clip:text;transition:background-position 1.4s cubic-bezier(.16,.84,.28,1) .4s}
.in .sort-no,.sort-no.in{background-position:0 100%}
.svsplit{padding-bottom:clamp(40px,6vw,80px);border-bottom:1px solid rgba(240,201,106,.2)}
.svlink{display:inline-flex;align-items:center;gap:12px;margin-top:10px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#f0c96a;padding:10px 0;border-bottom:1px solid rgba(240,201,106,.5)}
.svlink i{font-style:normal;width:36px;height:36px;border-radius:50%;border:1px solid #f0c96a;display:grid;place-items:center;transition:.4s}
.svlink:hover i{background:#f0c96a;color:#0E1F16;transform:translateX(6px)}

/* form cards */
.fcards{grid-template-columns:1fr 1fr!important}
.fcards .card{position:relative;border-radius:12px!important;overflow:hidden!important;box-shadow:0 40px 80px -30px rgba(0,0,0,.9)!important}
.fcards .card .ph{aspect-ratio:4/3!important;border-radius:0!important}
.fcards .card .bd{position:absolute!important;left:0;right:0;bottom:0;padding:90px 28px 28px!important;background:linear-gradient(180deg,transparent,rgba(6,16,10,.95) 55%)}
.fcards .card .bd:before{display:none}
.fcards .card h3{font-size:clamp(26px,2.6vw,36px)}
.fcards .card:hover .ph img{transform:scale(1.08)}
@media(max-width:700px){.fcards{grid-template-columns:1fr!important}}

/* steps */
.steps .step{background:rgba(8,20,12,.62);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)!important;border-radius:12px;padding:26px 28px!important;margin-bottom:14px;
  grid-template-columns:80px 1fr!important;transition:transform .5s cubic-bezier(.16,.84,.28,1),border-color .4s,background .4s!important}
.steps .step:hover{background:rgba(24,44,28,.85)!important;border-color:rgba(240,201,106,.6)!important;transform:translateX(12px);padding-left:28px!important}
.steps .step .n{width:62px;height:62px;border-radius:50%;border:1px solid #f0c96a;display:grid;place-items:center;font-size:24px!important;color:#f0c96a;transition:.4s}
.steps .step:hover .n{background:#f0c96a;color:#0E1F16!important;transform:none!important}
.steps .rail{left:-24px!important}

/* deko */
.dkgrid{grid-template-columns:1fr 1fr!important}
.dkcard{border-radius:12px!important;aspect-ratio:4/3!important;transition:transform .6s cubic-bezier(.16,.84,.28,1),box-shadow .6s}
.dkgrid:hover .dkcard{filter:brightness(.6)}
.dkgrid .dkcard:hover{filter:none;transform:translateY(-8px);box-shadow:0 50px 90px -30px rgba(0,0,0,1),0 0 0 2px #f0c96a}
.dkcard{transition:transform .6s cubic-bezier(.16,.84,.28,1),box-shadow .6s,filter .5s}
.dkcard:before{content:"";position:absolute;inset:14px;z-index:3;border:1px solid rgba(243,226,187,0);border-radius:6px;transition:.6s;pointer-events:none}
.dkcard:hover:before{inset:18px;border-color:rgba(243,226,187,.7)}
.dkcap .dkn{font-size:14px!important;font-weight:700;letter-spacing:.2em;font-family:var(--sans)!important}
@media(max-width:700px){.dkgrid{grid-template-columns:1fr!important}}
.soon{background:linear-gradient(135deg,rgba(10,26,16,.92),rgba(24,44,28,.9));border:0!important;border-radius:16px;padding:clamp(34px,5vw,70px)!important;box-shadow:0 60px 120px -50px rgba(0,0,0,.95),0 0 0 1px rgba(240,201,106,.35) inset}
.soon h3{font-size:clamp(30px,3.6vw,48px)}

/* gallery */
.masonry .mtile{border-radius:10px!important;transition:transform .6s cubic-bezier(.16,.84,.28,1),filter .5s,box-shadow .5s;box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.masonry:hover .mtile{filter:brightness(.45) saturate(.6)}
.masonry .mtile:hover{filter:none;transform:scale(1.03);box-shadow:0 40px 80px -30px rgba(0,0,0,1),0 0 0 2px #f0c96a;z-index:2}
.masonry .mtile:after{content:"+";position:absolute;left:50%;top:50%;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;background:#f0c96a;color:#0E1F16;
  display:grid;place-items:center;font-size:30px;transform:scale(0);transition:transform .45s cubic-bezier(.3,1.6,.5,1);z-index:3}
.masonry .mtile:hover:after{transform:scale(1)}

/* contact */
.kpanel{padding:clamp(28px,4.5vw,64px);border-radius:16px;background:linear-gradient(135deg,rgba(10,26,16,.92),rgba(24,44,28,.9));box-shadow:0 60px 120px -50px rgba(0,0,0,.95),0 0 0 1px rgba(240,201,106,.35) inset}
.kpanel .cline{transition:padding .4s}
.kpanel .cline:hover{padding-left:12px}
.kpanel .cline .v{font-family:var(--serif);font-size:22px;font-weight:600}
.kpanel h3{font-size:clamp(30px,3.4vw,44px)}
.kpanel form .btn{padding:17px;font-weight:700}
.field input:focus,.field textarea:focus{border-bottom-color:#f0c96a!important}
.field{position:relative}
.field:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:#f0c96a;transition:width .5s}
.field:focus-within:after{width:100%}

/* ===== v23: layout variety ===== */
.pair{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.pair.reveal{transform:none!important}
.pair>.mtile{aspect-ratio:3/4!important;height:auto!important;border-radius:10px;box-shadow:0 34px 70px -30px rgba(0,0,0,.9);
  clip-path:inset(0 0 100% 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1)}
.pair>.mtile:nth-child(2){margin-top:52px;transition-delay:.25s}
.pair.rev>.mtile:first-child{margin-top:52px}
.pair.rev>.mtile:nth-child(2){margin-top:0}
.pair.in>.mtile{clip-path:inset(0)}
.pair .mtile img,.pair .mtile video{transition:transform 1.3s cubic-bezier(.16,.84,.28,1)}
.pair .mtile:hover img,.pair .mtile:hover video{transform:scale(1.06)}
.solo{position:relative}
.solo.reveal{transform:none!important}
.solo>.mtile{aspect-ratio:4/3!important;height:auto!important;border-radius:10px;box-shadow:0 44px 80px -30px rgba(0,0,0,.95);
  clip-path:inset(0 0 100% 0);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1)}
.solo.in>.mtile{clip-path:inset(0)}
.solo>.mtile:after{content:"";position:absolute;inset:14px;border:1px solid rgba(243,226,187,0);border-radius:6px;transition:.6s;pointer-events:none;z-index:3}
.solo>.mtile:hover:after{inset:18px;border-color:rgba(243,226,187,.7)}
.solo .mtile img,.solo .mtile video{transition:transform 1.4s cubic-bezier(.16,.84,.28,1)}
.solo .mtile:hover img,.solo .mtile:hover video{transform:scale(1.05)}
.phs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:center}
.phs.reveal{transform:none!important}
.phs-i{position:relative;aspect-ratio:2/3;border-radius:10px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.95);
  clip-path:inset(0 0 100% 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) var(--d)}
.phs-i:nth-child(2){margin-top:-44px}
.phs-i:nth-child(3){margin-top:44px}
.phs.in .phs-i{clip-path:inset(0)}
.phs .mtile{position:absolute;inset:0;height:100%!important;aspect-ratio:auto!important;border-radius:0}
.phs .mtile img{transition:transform 1.4s cubic-bezier(.16,.84,.28,1)}
.phs-i:hover img{transform:scale(1.07)}
.pho{position:relative}
.pho.reveal{transform:none!important}
.pho>.mtile{aspect-ratio:5/4!important;height:auto!important;border-radius:10px;box-shadow:0 50px 90px -35px rgba(0,0,0,.95);
  clip-path:inset(0 0 100% 0);transition:clip-path 1.4s cubic-bezier(.77,0,.18,1) .2s}
.pho.in>.mtile{clip-path:inset(0)}
.pho .phv-s{right:-14px;bottom:-18px}
.pho>.mtile img{transform:scale(1.2);transition:transform 2.4s cubic-bezier(.16,.84,.28,1)}
.pho.in>.mtile img{transform:scale(1.02)}
.pho:hover>.mtile img{transform:scale(1.07)}
@media(max-width:700px){.phs-i:nth-child(2),.phs-i:nth-child(3){margin-top:0}.pair>.mtile:nth-child(2),.pair.rev>.mtile:first-child{margin-top:24px}}

/* ===== v23: hero ===== */
.hero{min-height:100svh!important}
.hero .veil{background:linear-gradient(90deg,rgba(6,16,10,.82) 0%,rgba(6,16,10,.45) 48%,rgba(6,16,10,.12) 75%,rgba(6,16,10,.35) 100%),linear-gradient(180deg,rgba(6,16,10,.7) 0%,rgba(6,16,10,0) 30%,rgba(6,16,10,.25) 60%,rgba(6,16,10,.88) 100%)!important}
.hnew{padding-bottom:clamp(60px,9vw,120px)!important}
.hline{display:flex;align-items:center;gap:16px;font-size:12px!important;font-weight:700}
.hline:before{content:"";width:0;height:1px;background:var(--sand);animation:hlw 1.2s cubic-bezier(.16,.84,.28,1) .3s forwards}
@keyframes hlw{to{width:clamp(40px,6vw,90px)}}
.brandh{font-size:clamp(46px,8.6vw,132px)!important;line-height:.94!important}
.hero .lead{font-size:clamp(17px,1.8vw,22px)!important;max-width:48ch}
.hcta{margin-top:clamp(24px,3vw,38px)!important;opacity:0;transform:translateY(20px);animation:hup .9s cubic-bezier(.16,.84,.28,1) 1.1s forwards}
@keyframes hup{to{opacity:1;transform:none}}
.hcta .btn{padding:17px 30px;font-weight:700}
.hstats{display:flex;flex-wrap:wrap;gap:0;margin-top:clamp(34px,4.4vw,60px);border-top:1px solid rgba(240,201,106,.35);max-width:900px}
.hstats>div{flex:1 1 140px;padding:18px 20px 0 0;opacity:0;transform:translateY(24px);animation:hup .9s cubic-bezier(.16,.84,.28,1) forwards;animation-delay:calc(1.3s + var(--i)*.15s);position:relative}
.hstats>div+div{padding-left:22px}
.hstats>div+div:before{content:"";position:absolute;left:0;top:18px;bottom:2px;width:1px;background:rgba(240,201,106,.28)}
.hstats b{display:block;font-family:var(--serif);font-size:clamp(26px,2.8vw,40px);font-weight:600;color:#f3e2bb;line-height:1}
.hstats span{display:block;margin-top:7px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.82)}
.hside{position:absolute;right:26px;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;z-index:3;
  font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:700;color:rgba(243,226,187,.85)}
.hscrl{position:absolute;left:var(--gut);bottom:22px;z-index:3;display:flex;align-items:center;gap:12px;
  font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.78)}
.hscrl i{display:block;width:56px;height:1px;background:rgba(243,226,187,.5);position:relative;overflow:hidden}
.hscrl i:after{content:"";position:absolute;inset:0;background:#f0c96a;transform:translateX(-100%);animation:hsl 2.2s ease-in-out infinite}
@keyframes hsl{50%{transform:none}100%{transform:translateX(100%)}}
.hscrl:hover i:after{animation-duration:1.1s}
.scrolldown{display:none}
@media(max-width:900px){.hside{display:none}.hstats>div{flex:1 1 45%}.hero{min-height:92svh!important}}

/* ===== v25: hero pro ===== */
.hpcard{position:absolute;right:var(--gut);bottom:clamp(80px,12vh,150px);z-index:4;width:clamp(260px,25vw,330px);display:block;
  padding:22px 24px 20px;border-radius:14px;background:rgba(8,20,12,.72);backdrop-filter:blur(16px);border:1px solid rgba(240,201,106,.45);
  box-shadow:0 40px 80px -30px rgba(0,0,0,.95);opacity:0;transform:translateY(40px);animation:hup 1s cubic-bezier(.16,.84,.28,1) 1.8s forwards;transition:border-color .4s,transform .5s}
.hpcard:hover{border-color:#f0c96a;transform:translateY(-6px)}
.hpc-t{display:inline-block;background:#f0c96a;color:#0E1F16;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;padding:5px 12px;border-radius:99px}
.hpcard b{display:block;margin:14px 0 12px;font-family:var(--serif);font-size:20px;font-weight:600;color:#fff;line-height:1.25}
.hpc-p{display:flex;align-items:baseline;gap:10px}
.hpc-p s{color:rgba(255,255,255,.5);font-size:16px;text-decoration-color:#f0c96a}
.hpc-p em{font-style:normal;font-family:var(--serif);font-size:34px;font-weight:700;color:#f0c96a;line-height:1}
.hpc-p small{font-size:12px;color:rgba(255,255,255,.7)}
.hpc-a{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14);
  font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#f3e2bb}
.hpc-a i{font-style:normal;transition:transform .4s}
.hpcard:hover .hpc-a i{transform:translateX(6px)}
.hnav{position:absolute;right:var(--gut);bottom:26px;z-index:4;display:flex;align-items:center;gap:16px;opacity:0;animation:hup .9s ease 2.1s forwards}
.hnum{font-family:var(--serif);font-size:15px;color:#f3e2bb;letter-spacing:.1em}
.hdots2{display:flex;gap:8px}
.hdots2 b{display:block;width:26px;height:2px;background:rgba(255,255,255,.3);cursor:pointer;transition:background .4s,width .4s}
.hdots2 b.on{background:#f0c96a;width:44px}
.hside{right:auto!important;left:14px!important}
@media(max-width:1100px){.hpcard{display:none}}
@media(max-width:900px){.hnav{left:var(--gut);right:auto}.hside{display:none!important}}
/* intro curtain */
#hcurt{position:fixed;inset:0;z-index:400;background:#06100a;pointer-events:none;animation:curt 1.15s cubic-bezier(.77,0,.18,1) .15s forwards}
@keyframes curt{to{clip-path:inset(0 0 100% 0);opacity:1}}
@media(prefers-reduced-motion:reduce){#hcurt{display:none}}

/* ===== v27: three-photo hero composition ===== */
.phs{grid-template-columns:.8fr 1.25fr .8fr!important;gap:clamp(10px,1.2vw,16px)!important;align-items:center;position:relative;padding:90px 0}
.phs-i{aspect-ratio:auto!important;height:clamp(230px,26vw,360px);border-radius:10px!important;box-shadow:0 44px 90px -34px rgba(0,0,0,.95)!important}
.phs-i.p2{height:clamp(330px,38vw,520px);margin-top:0!important;z-index:2;box-shadow:0 60px 110px -34px rgba(0,0,0,1)!important}
.phs-i.p1{margin-top:clamp(120px,13vw,200px)!important}
.phs-i.p3{margin-top:clamp(-200px,-13vw,-120px)!important}
.phs-i:after{content:"";position:absolute;inset:10px;z-index:3;border:1px solid rgba(243,226,187,0);border-radius:6px;transition:.6s;pointer-events:none}
.phs-i:hover:after{inset:14px;border-color:rgba(243,226,187,.75)}
.phs-i:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(6,16,10,0) 55%,rgba(6,16,10,.5));transition:opacity .5s}
.phs-i:hover:before{opacity:.3}
.phs:hover .phs-i{filter:brightness(.55) saturate(.75)}
.phs .phs-i:hover{filter:none;transform:translateY(-10px) scale(1.02);z-index:4}
.phs-i{transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) var(--d),transform .6s cubic-bezier(.16,.84,.28,1),filter .5s}
.phs-i .mtile img{transition:transform 1.6s cubic-bezier(.16,.84,.28,1)}
.phs-i:hover .mtile img{transform:scale(1.08)}
.phs-fr{position:absolute;z-index:0;left:50%;top:50%;width:clamp(210px,28vw,400px);height:clamp(330px,38vw,520px);
  transform:translate(-50%,-50%) translate(22px,-20px);border:1px solid rgba(240,201,106,.55);border-radius:10px;
  opacity:0;transition:opacity 1s 1.1s,transform 1.4s cubic-bezier(.16,.84,.28,1) 1.1s}
.phs.in .phs-fr{opacity:1;transform:translate(-50%,-50%) translate(26px,-26px)}
.phs-n{position:absolute;z-index:5;left:0;bottom:6px;background:#f0c96a;color:#0E1F16;padding:12px 18px;border-radius:4px;
  font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;box-shadow:0 20px 44px -18px rgba(0,0,0,.9);
  opacity:0;transform:translateY(22px);transition:.9s cubic-bezier(.16,.84,.28,1) 1.4s}
.phs.in .phs-n{opacity:1;transform:none}
@media(max-width:900px){
  .phs{grid-template-columns:1fr 1fr!important;padding:0;gap:12px!important}
  .phs-i{height:clamp(150px,34vw,220px)}
  .phs-i.p1,.phs-i.p3{margin-top:0!important}
  .phs-i.p2{grid-column:1/-1;height:clamp(200px,52vw,300px);order:-1}
  .phs-fr{display:none}.phs-n{left:0;bottom:auto;top:-16px;padding:9px 14px}
}

/* ===== v27: services varied layouts ===== */
.svblk{position:relative}
.svb-ph{position:relative;overflow:hidden;border-radius:12px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95)}
.svb-ph img{clip-path:inset(0 0 100% 0);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1),transform 1.5s cubic-bezier(.16,.84,.28,1)}
.svb-ph.in img{clip-path:inset(0)}
.svb-ph.reveal{transform:none!important}
.svb-ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.5s cubic-bezier(.16,.84,.28,1)}
.svblk:hover .svb-ph img{transform:scale(1.05)}
.svb-ph:after{content:"";position:absolute;inset:14px;border:1px solid rgba(243,226,187,0);border-radius:7px;transition:.6s;pointer-events:none}
.svblk:hover .svb-ph:after{inset:18px;border-color:rgba(243,226,187,.65)}
.svb-n{font-family:var(--serif);font-size:clamp(54px,6vw,96px);line-height:.85;color:transparent;-webkit-text-stroke:1px rgba(240,201,106,.85);margin-bottom:12px}
.svb-tx h3{font-size:clamp(26px,3vw,40px);margin:0 0 14px}
.svb-tx .lead{margin:0 0 6px}
/* A: photo right */
.sv-a{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(28px,4.5vw,70px);align-items:center}
.sv-a .svb-ph{order:2;aspect-ratio:4/3}
/* B: photo left, text card overlapping */
.sv-b{display:grid;grid-template-columns:1.25fr .95fr;gap:0;align-items:center}
.sv-b .svb-ph{aspect-ratio:3/2}
.sv-b .svb-tx{margin-left:-90px;padding:clamp(26px,3.4vw,46px);border-radius:14px;z-index:2;
  background:linear-gradient(135deg,rgba(10,26,16,.95),rgba(24,44,28,.94));box-shadow:0 50px 100px -40px rgba(0,0,0,.95),0 0 0 1px rgba(240,201,106,.35) inset}
/* C: wide band, text over photo */
.sv-c{position:relative}
.sv-c .svb-ph{aspect-ratio:21/9}
.sv-c .svb-tx{position:absolute;left:clamp(20px,4vw,60px);bottom:clamp(20px,3.6vw,52px);right:clamp(20px,4vw,60px);max-width:560px;z-index:2}
.sv-c .svb-ph:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(6,16,10,.92) 0%,rgba(6,16,10,.55) 45%,rgba(6,16,10,.1) 80%)}
.sv-c .svb-n{margin-bottom:6px}
/* V: portrait video right */
.sv-v{display:grid;grid-template-columns:1fr minmax(240px,360px);gap:clamp(28px,5vw,80px);align-items:center}
.sv-v .svb-ph{order:2;aspect-ratio:464/848}
.sv-v .svb-ph video{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:900px){
  .sv-a,.sv-b{grid-template-columns:1fr}
  .sv-a .svb-ph{order:0}
  .sv-v{grid-template-columns:1fr}
  .sv-v .svb-ph{order:0;max-width:340px;width:100%;margin:0 auto}
  .sv-b .svb-tx{margin:-40px 14px 0;padding:24px}
  .sv-c .svb-ph{aspect-ratio:4/3}
  .sv-c .svb-tx{position:static;margin-top:-90px;padding:0 4px;max-width:none}
  .sv-c .svb-ph:before{background:linear-gradient(180deg,rgba(6,16,10,0) 40%,rgba(6,16,10,.9))}
}

/* ===== v28: animated brand title ===== */
.brandh .sp{overflow:visible}
.brandh .sp:last-of-type>span{color:#f0c96a!important;-webkit-text-fill-color:#f0c96a;text-shadow:0 2px 20px rgba(0,0,0,.55),0 0 34px rgba(240,201,106,.25)!important;
  transition-duration:1.1s!important;transition-delay:.42s!important}
.brandh .sp:last-of-type.in>span{animation:goldpulse 5s ease-in-out 1.6s infinite}
@keyframes goldpulse{0%,100%{color:#f0c96a;-webkit-text-fill-color:#f0c96a;text-shadow:0 2px 20px rgba(0,0,0,.55),0 0 34px rgba(240,201,106,.25)}
  50%{color:#fff3d6;-webkit-text-fill-color:#fff3d6;text-shadow:0 2px 20px rgba(0,0,0,.5),0 0 46px rgba(240,201,106,.6)}}
.brandh:hover .sp:last-of-type>span{color:#fff3d6!important;-webkit-text-fill-color:#fff3d6}
.brandh .sp:first-of-type>span{transition-duration:1.1s!important}
@media(prefers-reduced-motion:reduce){.brandh .sp:last-of-type.in>span{animation:none}}

/* ===== v30: intro ===== */
#intro{position:fixed;inset:0;z-index:500;overflow:hidden;background:#06100a;display:grid;place-items:center;
  transition:opacity .6s ease}
#intro.gone{opacity:0;pointer-events:none}
#intro .in-bg{position:absolute;inset:0;background-size:cover;background-position:center 55%;opacity:0;transform:scale(1.28);
  filter:blur(14px) brightness(.55);animation:inbg 2.9s cubic-bezier(.16,.84,.28,1) .15s forwards}
@keyframes inbg{35%{opacity:1}100%{opacity:1;transform:scale(1.04);filter:blur(0) brightness(.62)}}
#intro .in-v{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 50%,rgba(6,16,10,.45),rgba(6,16,10,.9))}
#intro .in-c{position:relative;z-index:2;text-align:center;padding:0 24px;max-width:1100px}
#intro .in-eb{font-size:11px;letter-spacing:.34em;text-transform:uppercase;font-weight:700;color:#f3e2bb;opacity:0;
  animation:inup .9s ease .35s forwards}
#intro .in-name{font-family:var(--serif);font-weight:600;line-height:1;margin:22px 0 0;color:#fff;
  font-size:clamp(38px,8vw,116px);letter-spacing:-.01em}
#intro .in-name .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.1em;margin-bottom:-.1em}
#intro .in-name .w>span{display:inline-block;transform:translateY(110%);opacity:0;animation:inw 1.1s cubic-bezier(.16,.84,.28,1) forwards}
#intro .in-name .w:nth-child(1)>span{animation-delay:.55s}
#intro .in-name .w:nth-child(2)>span{animation-delay:.75s;color:#f0c96a}
@keyframes inw{to{transform:none;opacity:1}}
#intro .in-sub{margin-top:18px;font-size:clamp(12px,1.3vw,15px);letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  color:rgba(255,255,255,.75);opacity:0;animation:inup 1s ease 1.15s forwards}
@keyframes inup{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
#intro .in-bar{position:absolute;left:50%;bottom:clamp(40px,8vh,80px);transform:translateX(-50%);width:min(440px,72vw);z-index:2}
#intro .in-line{height:1px;background:rgba(255,255,255,.22);position:relative;overflow:hidden}
#intro .in-line i{position:absolute;inset:0;background:linear-gradient(90deg,#c9a25a,#f0c96a);transform-origin:left;transform:scaleX(0);
  animation:inln 2.5s cubic-bezier(.45,0,.15,1) .3s forwards}
@keyframes inln{to{transform:scaleX(1)}}
#intro .in-num{display:flex;justify-content:space-between;margin-top:12px;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;
  font-weight:700;color:rgba(243,226,187,.9)}
#intro .in-skip{position:absolute;right:clamp(16px,3vw,34px);top:clamp(16px,3vw,30px);z-index:3;font-size:10.5px;letter-spacing:.2em;
  text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.6);cursor:pointer;background:none;border:0;padding:10px}
#intro .in-skip:hover{color:#f0c96a}
#intro{transition:transform 1.05s cubic-bezier(.77,0,.18,1),opacity .6s ease .55s}
#intro.open{transform:translateY(-100%)}
#intro:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#f0c96a,transparent);opacity:0;transition:opacity .4s}
#intro.open:after{opacity:1}
#intro.open .in-c,#intro.open .in-bar,#intro.open .in-skip{opacity:0;transition:opacity .45s}
body.intro-lock{overflow:hidden}
@media(prefers-reduced-motion:reduce){#intro{display:none}}

.sidx{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(22px,3vw,44px);max-width:640px;border-top:1px solid rgba(240,201,106,.28)}
.sidx li{border-bottom:1px solid rgba(240,201,106,.18)}
.sidx a{display:grid;grid-template-columns:30px 1fr 16px;align-items:baseline;gap:10px;padding:13px 0;color:rgba(255,255,255,.86);font-size:14px;line-height:1.35;text-decoration:none;transition:color .35s,padding .45s cubic-bezier(.16,.84,.28,1)}
.sidx b{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:17px;color:#f0c96a;letter-spacing:.02em}
.sidx i{font-style:normal;color:#f0c96a;opacity:0;transform:translateX(-8px);transition:.4s}
.sidx a:hover{color:#fff;padding-left:6px}
.sidx a:hover i{opacity:1;transform:none}
@media(max-width:600px){.sidx{grid-template-columns:1fr}}

#gal.gl{columns:auto!important;display:grid;gap:12px;align-items:stretch}
#gal.gl .gcol{display:flex;flex-direction:column;gap:12px;min-width:0}
#gal.gl .mtile{margin:0!important;aspect-ratio:auto!important;min-height:0}
#gal.gl .mtile img,#gal.gl .mtile video{width:100%;height:100%!important;object-fit:cover;display:block}
.duo.solo>.mtile:nth-child(n+2){display:none!important}
.sidx.one{grid-template-columns:1fr;max-width:460px}

/* lead forms */
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.hform{display:grid;grid-template-columns:1fr 1fr 1.15fr auto;gap:0;max-width:980px;margin-top:34px;
  background:rgba(12,22,16,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22);border-radius:2px}
.hform input,.hform select{background:transparent;border:0;border-right:1px solid rgba(255,255,255,.18);color:#fff;padding:18px 18px;font-size:15px;border-radius:0}
.hform select{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#C2A878 50%),linear-gradient(135deg,#C2A878 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.hform select option{color:#1b2a20}
.hform input::placeholder{color:rgba(255,255,255,.7)}
.hform input:focus,.hform select:focus{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}
.hcta.hform,.hcta.hprice{margin-top:0!important}.hform.hcta{margin-top:clamp(24px,3vw,34px)!important}.hprice.hcta{margin-top:16px!important}
.hform .btn{font-weight:700;border-radius:0;white-space:nowrap;padding:0 28px;justify-content:center}
.hform.sent{display:none}
.hprice{display:inline-block;margin-top:16px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--sand);border-bottom:1px solid rgba(194,168,120,.45);padding-bottom:3px}
.hprice:hover{color:#fff;border-color:#fff}
.lf-msg{margin-top:14px;font-size:15px;line-height:1.5;padding:14px 18px;border-left:2px solid var(--sand);background:rgba(12,22,16,.45);color:#fff;max-width:980px}
.lf-msg.err{border-color:#e07a5f}
.lf-msg a{color:var(--sand)}
@media(max-width:900px){.hform{grid-template-columns:1fr 1fr}.hform select{grid-column:span 2;border-top:1px solid rgba(255,255,255,.18);border-right:0}.hform input:nth-of-type(2){border-right:0}.hform .btn{grid-column:span 2;padding:17px}}
@media(max-width:520px){.hform{grid-template-columns:1fr}.hform input,.hform select{grid-column:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.18);border-top:0}.hform .btn{grid-column:auto}}
.lm{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .25s}
.lm.on{opacity:1}
.lm-bg{position:absolute;inset:0;background:rgba(8,14,10,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.lm-box{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#14231a;color:#fff;padding:clamp(24px,4vw,40px);border:1px solid rgba(194,168,120,.3);transform:translateY(16px);transition:transform .3s}
.lm.on .lm-box{transform:none}
.lm-box h3{font-size:clamp(26px,3vw,34px);margin:10px 0 6px}
.lm-box p{color:rgba(255,255,255,.7);margin-bottom:20px}
.lm-box .field label{color:rgba(255,255,255,.65)}
.lm-box input,.lm-box select,.lm-box textarea{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2);color:#fff}
.lm-box select option{color:#1b2a20}
.lm-box form.sent{display:none}
.lm-x{position:absolute;top:10px;right:14px;background:none;border:0;color:#fff;font-size:30px;line-height:1;cursor:pointer;opacity:.7}
.lm-x:hover{opacity:1}
.wa-float{background:var(--sand)!important;animation:pulse2 2.6s ease-out infinite!important}
.wa-float svg{fill:#14231a!important}
@keyframes pulse2{0%{box-shadow:0 0 0 0 rgba(194,168,120,.6)}70%{box-shadow:0 0 0 18px rgba(194,168,120,0)}100%{box-shadow:0 0 0 0 rgba(194,168,120,0)}}

/* Spezialangebot */
.sa{padding:clamp(40px,6vw,80px) 0}
.sa-box{display:grid;grid-template-columns:1fr 1.1fr;background:#f4efe4;color:#14231a;border:1px solid rgba(194,168,120,.6);box-shadow:0 30px 70px -30px rgba(0,0,0,.6);overflow:visible}
.sa-ph{position:relative;min-height:380px}
.sa-ph .mtile{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;aspect-ratio:auto!important;transform:none!important;border-radius:0;margin:0}
.sa-ph .mtile img{width:100%;height:100%;object-fit:cover}
.sa-seal{position:absolute;right:-46px;top:34px;width:112px;height:112px;border-radius:50%;background:#b8893e;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-10deg);box-shadow:0 16px 36px -10px rgba(0,0,0,.55);z-index:2;animation:saS 3s ease-in-out infinite}
.sa-seal b{font-family:var(--serif);font-size:32px;line-height:1}
.sa-seal span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px}
@keyframes saS{50%{transform:rotate(-4deg) scale(1.06)}}
.sa-tx{padding:clamp(28px,4.5vw,60px) clamp(24px,4.5vw,64px) clamp(28px,4.5vw,56px) clamp(40px,6vw,90px)}
.sa-tag{display:inline-block;background:#14231a;color:#e6cf9c;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:8px 14px;font-weight:600}
.sa-tx h2,.sa-tx p,.sa-tx span,.sa-tx b,
.sa-tx h1.ph1.ph1{text-shadow:none!important}
.sa-tx h2,
.sa-tx h1.ph1.ph1{color:#14231a!important;font-size:clamp(38px,5vw,64px);margin:18px 0 6px;line-height:1}
.sa-sub{color:#3c4a3f!important;font-size:clamp(18px,1.8vw,22px);color:#3c4a3f;margin:0 0 22px}
.sa-price{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(20,35,26,.18);border-bottom:1px solid rgba(20,35,26,.18);padding:16px 0}
.sa-price b{font-family:var(--serif);font-size:clamp(54px,6vw,84px);line-height:1;color:#9a6f2c}
.sa-price span{font-size:17px;color:#3c4a3f}
.sa-note{font-weight:700;font-size:18px;color:#9a6f2c!important;margin:16px 0 26px;letter-spacing:.02em}
.sa .btn-p{background:#14231a;color:#f4efe4}
.sa .btn-p:hover{background:#b8893e;color:#fff}
@media(max-width:860px){.sa-box{grid-template-columns:1fr}.sa-ph{min-height:260px}.sa-seal{right:16px;top:auto;bottom:-40px;width:96px;height:96px}.sa-seal b{font-size:26px}.sa-tx{padding:52px 22px 30px}}
@media(prefers-reduced-motion:reduce){.sa-seal{animation:none}}

/* ===== Thujen page: varied layouts ===== */
.tj-sec{overflow:hidden}
.tj-no{font-family:var(--serif);font-size:15px;color:var(--sand);letter-spacing:.1em;display:flex;align-items:center;gap:14px}
.tj-no span{font-family:inherit;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.tj-no:after{content:"";height:1px;width:60px;background:var(--sand)}
.tj-show{position:relative;height:clamp(460px,78vh,760px);border-radius:6px;overflow:hidden;box-shadow:0 50px 90px -50px rgba(0,0,0,.9)}
.tj-show .mtile{position:absolute!important;inset:0;aspect-ratio:auto!important;height:100%;border-radius:0;cursor:zoom-in}
.tj-show:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,16,11,.88) 0%,rgba(8,16,11,.55) 45%,rgba(8,16,11,0) 75%),linear-gradient(0deg,rgba(8,16,11,.6),transparent 40%);pointer-events:none}
.tj-show-tx{position:absolute;left:clamp(22px,5vw,70px);bottom:clamp(26px,5vw,70px);max-width:560px;z-index:2;pointer-events:none}
.tj-show-tx h2,
.tj-show-tx h1.ph1.ph1{font-size:clamp(34px,4.6vw,66px);line-height:1.02;margin:16px 0 18px;color:#fff}
.tj-show-tx p{font-size:clamp(15px,1.25vw,18px);color:rgba(255,255,255,.85);line-height:1.6}
.tj-ticks{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:-1px;border:1px solid rgba(194,168,120,.35);border-top:0;background:rgba(10,20,14,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tj-tk{padding:26px 24px;border-right:1px solid rgba(194,168,120,.25);transition:background .35s}
.tj-tk:last-child{border-right:0}
.tj-tk:hover{background:rgba(194,168,120,.12)}
.tj-tk em{display:block;font-style:normal;font-family:var(--serif);color:var(--sand);font-size:28px;margin-bottom:10px}
.tj-tk b{font-weight:500;font-size:16px;color:#fff;line-height:1.4}
.tj-quote{font-family:var(--serif);font-size:clamp(22px,2.4vw,34px);line-height:1.35;color:#fff;max-width:30ch;margin:clamp(40px,6vw,80px) 0 0 auto;text-align:right;border-right:2px solid var(--sand);padding-right:26px}
.tj-strip-h{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.tj-arr{display:flex;gap:10px;margin-bottom:clamp(28px,4vw,50px)}
.tj-arr button{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font-size:20px;cursor:pointer;transition:.25s}
.tj-arr button:hover{background:var(--sand);border-color:var(--sand);color:#14231a}
.tj-strip{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:34px max(var(--gut),calc((100vw - 1152px)/2)) 10px;scrollbar-width:none;cursor:grab}
.tj-strip::-webkit-scrollbar{display:none}
.tj-strip.drag{cursor:grabbing;scroll-snap-type:none}
.tj-card{position:relative;flex:0 0 clamp(250px,27vw,380px);scroll-snap-align:start;transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.tj-card:nth-child(even){margin-top:60px}
.tj-card .mtile{aspect-ratio:3/4.4;border-radius:6px}
.tj-card:hover{transform:translateY(-8px)}
.tj-cn{position:absolute;top:-22px;left:14px;z-index:2;font-family:var(--serif);font-size:56px;color:var(--sand);line-height:1;text-shadow:0 6px 20px rgba(0,0,0,.6)}
.tj-end{display:flex;align-items:center;border:1px solid rgba(194,168,120,.4);border-radius:6px;padding:34px;aspect-ratio:3/4.4;height:auto}
.tj-end b{display:block;font-family:var(--serif);font-size:clamp(28px,2.6vw,40px);color:#fff;font-weight:400;margin-bottom:14px}
.tj-end span{color:rgba(255,255,255,.7);font-size:16px}
.tj-bar{height:2px;background:rgba(255,255,255,.15);margin-top:34px;position:relative}
.tj-bar i{position:absolute;left:0;top:0;height:100%;width:20%;background:var(--sand);transition:width .2s}
.tj-col{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(60px,auto);gap:18px;align-items:start}
.tj-col .mtile{aspect-ratio:auto;height:100%;border-radius:6px}
.tj-col-tx{grid-column:1/6;grid-row:1/4;align-self:center;padding-right:10px}
.tj-col-tx h2,
.tj-col-tx h1.ph1.ph1{margin:12px 0 18px}
.tj-c1{grid-column:6/10;grid-row:1/7;height:clamp(420px,46vw,640px)}
.tj-c2{grid-column:10/13;grid-row:2/5;height:clamp(260px,26vw,380px)}
.tj-c3{grid-column:2/6;grid-row:4/7;height:clamp(220px,20vw,300px)}
.tj-c4{grid-column:10/13;grid-row:5/8;height:clamp(200px,18vw,260px);transform:translateX(-30px) rotate(2deg);box-shadow:0 30px 60px -20px rgba(0,0,0,.7);border:6px solid #f4efe4;border-radius:4px}
.tj-c4 .mtile{border-radius:0}
.tj-std{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,5vw,80px);align-items:start}
.tj-cnt{position:sticky;top:120px}
.tj-num{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(90px,12vw,190px);line-height:.9;color:var(--sand);margin:24px 0 8px;letter-spacing:-.02em}
.tj-cnt>span{font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.tj-tick{overflow:hidden;margin-top:clamp(50px,7vw,90px);-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.tj-tick-t{display:flex;gap:16px;width:max-content;animation:tjT 48s linear infinite}
.tj-tick:hover .tj-tick-t{animation-play-state:paused}
.tj-tick .mtile{flex:0 0 auto;width:clamp(200px,20vw,280px);aspect-ratio:4/5;border-radius:6px}
.tj-tick .mtile:nth-child(odd){transform:translateY(24px)}
@keyframes tjT{to{transform:translateX(-50%)}}
.tj-exp{display:flex;gap:16px;height:clamp(420px,56vh,600px)}
.tj-ep{position:relative;flex:1;border-radius:6px;overflow:hidden;background-size:cover;background-position:center;transition:flex .8s cubic-bezier(.2,.7,.3,1);cursor:default}
.tj-ep:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,11,.92),rgba(8,16,11,.2) 60%);transition:background .6s}
.tj-exp:hover .tj-ep{flex:.7}
.tj-exp .tj-ep:hover{flex:1.6}
.tj-ep-tx{position:absolute;left:0;right:0;bottom:0;padding:clamp(22px,3vw,40px)}
.tj-ep-tx em{font-style:normal;font-family:var(--serif);font-size:70px;line-height:1;color:var(--sand);opacity:.9}
.tj-ep-tx h3{color:#fff;font-size:clamp(26px,2.6vw,38px);margin:8px 0 10px}
.tj-ep-tx p{color:rgba(255,255,255,.82);max-width:46ch;max-height:0;opacity:0;overflow:hidden;transition:max-height .7s,opacity .5s}
.tj-ep:hover .tj-ep-tx p{max-height:240px;opacity:1}
.tj-state{text-align:center;max-width:860px}
.tj-state h2,
.tj-state h1.ph1.ph1{font-size:clamp(38px,5.4vw,78px);margin:16px 0 26px;line-height:1.05}
.tj-state .lead{margin-left:auto;margin-right:auto;max-width:60ch}
.tj-tabs{display:grid;grid-template-columns:.8fr 1.6fr;gap:clamp(24px,4vw,60px);margin-top:clamp(30px,4vw,50px)}
.tj-tl{display:flex;flex-direction:column}
.tj-tl button{position:relative;display:flex;align-items:center;gap:18px;text-align:left;background:none;border:0;border-top:1px solid rgba(255,255,255,.18);padding:24px 0;color:rgba(255,255,255,.55);cursor:pointer;font-family:var(--serif);font-size:clamp(22px,2vw,28px);transition:color .3s}
.tj-tl button:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.tj-tl button em{font-style:normal;font-size:14px;color:var(--sand);font-family:var(--sans,inherit);letter-spacing:.1em}
.tj-tl button i{position:absolute;left:0;top:-1px;height:2px;width:0;background:var(--sand);transition:width .5s}
.tj-tl button:hover,.tj-tl button.on{color:#fff}
.tj-tl button.on i{width:100%}
.tj-tp{position:relative}
.tj-pan{display:none;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center}
.tj-pan.on{display:grid;animation:tjIn .6s cubic-bezier(.2,.7,.3,1)}
@keyframes tjIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.tj-pm .mtile{aspect-ratio:4/5;border-radius:6px}
.tj-ptx h3{font-size:clamp(26px,2.4vw,34px);margin:8px 0 14px;color:#fff}
.tj-gar{position:relative;padding-bottom:clamp(60px,8vw,120px)}
.tj-gar-img{width:78%;height:clamp(360px,48vw,600px);border-radius:6px;overflow:hidden}
.tj-gar-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s cubic-bezier(.16,.84,.28,1)}
.tj-gar.in .tj-gar-img img{transform:scale(1)}
.tj-gar-card{position:absolute;right:0;bottom:0;width:min(520px,52%);background:#f4efe4;color:#14231a;padding:clamp(28px,3.5vw,50px);box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
.tj-gar-card h2,
.tj-gar-card h1.ph1.ph1{color:#14231a!important;font-size:clamp(30px,3.2vw,46px)!important;overflow-wrap:anywhere;margin:12px 0 16px;text-shadow:none!important}
.tj-gar-card .lead{color:#3c4a3f!important;text-shadow:none!important}
.tj-gar-card .eyebrow{color:#9a6f2c;text-shadow:none!important}
@media(max-width:900px){
  .tj-ticks{grid-template-columns:1fr 1fr}.tj-tk:nth-child(2){border-right:0}.tj-tk:nth-child(-n+2){border-bottom:1px solid rgba(194,168,120,.25)}
  .tj-quote{text-align:left;margin-left:0;border-right:0;border-left:2px solid var(--sand);padding:0 0 0 20px}
  .tj-col{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .tj-col-tx{grid-column:1/3;grid-row:auto}
  .tj-c1{grid-column:1/2;grid-row:auto;height:420px}.tj-c2{grid-column:2/3;grid-row:auto;height:260px}
  .tj-c3{grid-column:2/3;grid-row:auto;height:200px;margin-top:-150px}.tj-c4{grid-column:1/3;grid-row:auto;height:220px;transform:rotate(1deg)}
  .tj-std{grid-template-columns:1fr}.tj-cnt{position:static}
  .tj-exp{flex-direction:column;height:auto}.tj-ep{min-height:340px}.tj-exp:hover .tj-ep,.tj-exp .tj-ep:hover{flex:1}.tj-ep-tx p{max-height:none;opacity:1}
  .tj-tabs,.tj-pan.on{grid-template-columns:1fr}
  .tj-gar-img{width:100%;height:320px}.tj-gar-card{position:relative;width:auto;margin:-60px 16px 0}.tj-gar{padding-bottom:0}
}
@media(max-width:560px){.tj-card{flex-basis:76vw}.tj-card:nth-child(even){margin-top:30px}.tj-c3{margin-top:-120px}}
@media(max-width:700px){
  .tj-show{height:auto;display:flex;flex-direction:column;background:#0c1810}
  .tj-show .mtile{position:relative!important;inset:auto;height:340px!important}
  .tj-show:after{display:none}
  .tj-show-tx{position:relative;left:auto;bottom:auto;padding:26px 20px 28px;pointer-events:auto}
  .tj-c3{margin-top:0!important}.tj-c1{height:360px}.tj-c2{height:360px}.tj-c3{grid-column:1/3;height:220px}.tj-c4{display:none}
}
@media(prefers-reduced-motion:reduce){.tj-tick-t{animation:none}}

/* price scale */
.ps{display:grid;grid-template-columns:1.7fr 1fr;gap:clamp(20px,3vw,40px);align-items:stretch}
.ps-stage{position:relative;height:clamp(380px,44vw,520px);padding:0 0 46px 54px;border-bottom:1px solid rgba(255,255,255,.3)}
.ps-grid div{position:absolute;left:0;right:0;border-top:1px dashed rgba(255,255,255,.14);transform:translateY(0)}
.ps-grid{position:absolute;left:0;right:0;top:0;bottom:46px}
.ps-grid span{position:absolute;left:0;top:-9px;font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.5);background:transparent}
.ps-cols{position:absolute;left:54px;right:0;top:0;bottom:46px;display:grid;grid-template-columns:repeat(8,1fr);gap:6px;align-items:end}
.ps-col{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;background:none;border:0;cursor:pointer;padding:0;color:#fff;font:inherit}
.ps-col:before{content:"";position:absolute;inset:0;border-radius:6px 6px 0 0;background:linear-gradient(0deg,rgba(194,168,120,.18),transparent);opacity:0;transition:opacity .3s}
.ps-col.on:before,.ps-col:hover:before{opacity:1}
.ps-tree{position:relative;display:block;width:clamp(26px,3.4vw,46px);height:calc((100% - 46px) * var(--h) / 100 * 1);transform-origin:bottom;transform:scaleY(0);transition:transform 1.1s cubic-bezier(.2,.8,.25,1) var(--d),filter .3s}
.ps-tree{height:calc(var(--h) * .86)}
.ps.grow .ps-tree{transform:scaleY(1)}
.ps-tree svg{width:100%;height:100%;display:block;filter:drop-shadow(0 10px 14px rgba(0,0,0,.45))}
.ps-col.on .ps-tree svg{filter:drop-shadow(0 0 14px rgba(230,207,156,.55)) drop-shadow(0 10px 14px rgba(0,0,0,.45))}
.ps-col:hover .ps-tree{transform:scaleY(1.03)}
.ps-chip{margin-bottom:8px;font-size:12px;padding:4px 8px;border-radius:20px;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.65);white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .5s calc(var(--d) + .6s),transform .5s calc(var(--d) + .6s),background .3s}
.ps.grow .ps-chip{opacity:1;transform:none}
.ps-chip.has{background:var(--sand);border-color:var(--sand);color:#14231a;font-weight:700;font-size:13px}
.ps-col.on .ps-chip{box-shadow:0 0 0 3px rgba(194,168,120,.35)}
.ps-lbl{position:absolute;bottom:-44px;left:50%;transform:translateX(-50%);font-size:12px;white-space:nowrap;color:rgba(255,255,255,.7);height:40px;display:flex;align-items:center;transition:color .3s}
.ps-col.on .ps-lbl{color:var(--sand);font-weight:700}
.ps-lbl i{font-style:normal}
.ps-info{background:rgba(10,20,14,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(194,168,120,.35);border-radius:6px;padding:clamp(24px,3vw,38px);display:flex}
.ps-in{display:flex;flex-direction:column;gap:14px;width:100%;animation:tjIn .45s ease}
.ps-txt{margin:20px 0 24px;font-size:16px;line-height:1.6;color:rgba(245,238,221,.9)}
.ps-h span,.ps-p span{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.ps-h b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,58px);line-height:1.05;color:#fff;margin-top:6px}
.ps-p{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid rgba(255,255,255,.14);padding-top:12px}
.ps-p b{font-family:var(--serif);font-size:28px;font-weight:400;color:var(--sand)}
.ps-p em{font-style:normal;color:rgba(255,255,255,.8);font-size:15px}
.ps+.note,.ps~.note{margin-top:34px!important}
.ps-in .btn{margin-top:auto;justify-content:center}
@media(max-width:900px){.ps{grid-template-columns:1fr}.ps-stage{padding-left:40px;height:360px}.ps-cols{left:40px;gap:2px}.ps-chip{font-size:10px;padding:3px 5px}.ps-chip.has{font-size:10.5px}.ps-lbl{font-size:10px;flex-direction:column;line-height:1.15;justify-content:center}.ps-lbl i{font-style:normal}.ps-lbl small{display:none}.ps-stage{padding-bottom:50px}}
@media(max-width:520px){.ps-chip:not(.has){display:none}.ps-grid span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.ps-tree,.ps-chip{transition:none}}

@media(max-width:600px){.hbar{gap:10px!important}#hd .brand{min-width:0;flex:1 1 auto}.lang{padding:2px!important}.lang button{padding:4px 6px!important;font-size:10px!important;letter-spacing:.04em!important}.burger{padding:6px!important}}
@media(max-width:360px){#hd .brand b{font-size:16px!important}.mus{display:none!important}}


html.booting,html.booting body{overflow:hidden!important;background:#06100a}
#preboot{position:fixed;inset:0;z-index:2000;background:#06100a;display:grid;place-items:center;transition:opacity .5s ease}
#preboot.off{opacity:0;pointer-events:none}
#preboot i{display:block;width:min(160px,40vw);height:1px;background:rgba(255,255,255,.15);position:relative;overflow:hidden}
#preboot i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#f0c96a,transparent);animation:pbx 1.2s ease-in-out infinite}
@keyframes pbx{from{transform:translateX(-100%)}to{transform:translateX(100%)}}

/* ==== v5 fixes ==== */
.tj-col{grid-template-rows:auto auto;grid-auto-rows:auto;align-items:end}
.tj-col-tx{grid-column:1/6;grid-row:1;align-self:center}
.tj-c1{grid-column:6/10;grid-row:1/3;align-self:stretch;height:auto;min-height:clamp(420px,46vw,660px)}
.tj-c3{grid-column:2/6;grid-row:2;align-self:end}
.tj-cr{grid-column:10/13;grid-row:1/3;align-self:end;display:flex;flex-direction:column;gap:18px}
.tj-cr .tj-c2{height:clamp(260px,26vw,380px)}
.tj-cr .tj-c4{height:clamp(200px,18vw,260px);transform:none}
.tj-num{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;font-size:clamp(56px,6vw,96px);line-height:1;margin:0 0 6px;color:#fff}
.tj-stk{position:relative;margin-top:22px;border-radius:6px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.tj-stk img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tj-stk:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,11,.9) 0%,rgba(8,16,11,.2) 45%,transparent 70%)}
.tj-stk-b{position:absolute;left:26px;right:26px;bottom:24px;z-index:1}
.tj-stk-b span{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--sand)}
.tj-tk{padding:28px 26px}
.tj-tk em{font-variant-numeric:lining-nums}
.ps-tree{width:clamp(30px,4vw,58px)}
.ps-tree img{width:100%;height:100%;display:block;object-fit:fill;filter:drop-shadow(0 12px 14px rgba(0,0,0,.5))}
.ps-tree:after{content:"";position:absolute;left:-15%;right:-15%;bottom:-5px;height:10px;border-radius:50%;background:radial-gradient(rgba(0,0,0,.55),transparent 70%);z-index:-1}
.ps-col.on .ps-tree img{filter:drop-shadow(0 0 16px rgba(230,207,156,.55)) drop-shadow(0 12px 14px rgba(0,0,0,.5))}
@media(max-width:900px){
  .tj-col{grid-template-columns:1fr 1fr;grid-template-rows:none}
  .tj-col-tx{grid-column:1/3;grid-row:auto}
  .tj-c1{grid-column:1/2;grid-row:auto;min-height:0;height:420px}
  .tj-c3{grid-column:1/3;grid-row:auto;height:220px;margin-top:0!important}
  .tj-cr{grid-column:2/3;grid-row:auto;align-self:stretch}
  .tj-cr .tj-c2{height:auto;flex:1}.tj-cr .tj-c4{height:140px;display:block!important}
  .tj-stk{aspect-ratio:16/10}
}

/* ==== v5.2 ==== */
.sel2{display:grid;grid-template-columns:minmax(260px,.9fr) 2.1fr;gap:clamp(28px,4vw,66px);align-items:center}
.sel2-g{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.2vw,18px)}
.sel2-c{position:relative}
.sel2-c .mtile{aspect-ratio:3/4;height:auto;border-radius:6px;box-shadow:0 34px 60px -34px rgba(0,0,0,.85)}
.sel2-n{position:absolute;top:12px;left:14px;z-index:2;font-family:var(--serif);font-size:15px;letter-spacing:.14em;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.7)}
@media(max-width:1000px){.sel2{grid-template-columns:1fr;gap:26px}}
@media(max-width:620px){.sel2-g{grid-template-columns:1fr 1fr}.sel2-c:last-child{grid-column:1/3}.sel2-c:last-child .mtile{aspect-ratio:16/10}}

.flegal{margin-top:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;line-height:1.65;color:rgba(255,255,255,.5)}
.flegal p{margin:0 0 10px;max-width:120ch}
.flegal b{color:rgba(255,255,255,.72);font-weight:600}
.flegal a{color:var(--sand);text-decoration:none;border-bottom:1px solid rgba(194,168,120,.4)}
.flegal a:hover{color:#fff}

.sel2{grid-template-columns:minmax(240px,.8fr) 2.6fr}
.sel2-g{grid-template-columns:repeat(4,1fr)}
@media(max-width:1200px){.sel2{grid-template-columns:1fr}.sel2-g{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.sel2-g{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.sel2-g{grid-template-columns:1fr 1fr}.sel2-c:last-child{grid-column:auto}.sel2-c:last-child .mtile{aspect-ratio:3/4}}

/* ===== v21: premium promo ===== */
.sa{padding:clamp(56px,8vw,110px) 0}
.sa-box{position:relative;grid-template-columns:1fr 1.05fr!important;background:radial-gradient(120% 140% at 100% 0%,#1f3a2a 0%,#10221a 45%,#08140e 100%)!important;color:#f3ecdc!important;border:1px solid rgba(214,182,120,.55)!important;box-shadow:0 50px 100px -40px rgba(0,0,0,.85),0 0 0 8px rgba(8,20,14,.55),0 0 0 9px rgba(214,182,120,.28)!important;isolation:isolate}
.sa-box:before{content:"";position:absolute;inset:14px;border:1px solid rgba(214,182,120,.22);pointer-events:none;z-index:3}
.sa-box:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(420px circle at var(--mx,70%) var(--my,30%),rgba(230,200,140,.13),transparent 60%);transition:background .2s}
.sa-c{position:absolute;width:26px;height:26px;border:1px solid #d6b678;z-index:4;pointer-events:none;opacity:0;transition:opacity .8s .6s,transform .8s .6s cubic-bezier(.16,.84,.28,1)}
.sa-c.c1{left:6px;top:6px;border-right:0;border-bottom:0;transform:translate(-10px,-10px)}
.sa-c.c2{right:6px;top:6px;border-left:0;border-bottom:0;transform:translate(10px,-10px)}
.sa-c.c3{left:6px;bottom:6px;border-right:0;border-top:0;transform:translate(-10px,10px)}
.sa-c.c4{right:6px;bottom:6px;border-left:0;border-top:0;transform:translate(10px,10px)}
.sa-box.in .sa-c{opacity:1;transform:none}
.sa-box.reveal{transform:translateY(40px) scale(.98)}
.sa-box.reveal.in{transform:none}
.sa-ph .mtile{overflow:hidden}
.sa-ph{min-height:460px!important;z-index:2;clip-path:inset(0 100% 0 0);transition:clip-path 1.4s cubic-bezier(.77,0,.18,1) .15s}
.sa-box.in .sa-ph{clip-path:inset(0 -200px 0 0)}
.sa-ph .mtile img{transform:scale(1.18);transition:transform 2.4s cubic-bezier(.16,.84,.28,1) .15s}
.sa-box.in .sa-ph .mtile img{transform:scale(1.02);animation:saKB 18s ease-in-out 2.6s infinite alternate}
@keyframes saKB{to{transform:scale(1.1) translate(-1.5%,-1%)}}
.sa-ph:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(8,20,14,.55)),linear-gradient(0deg,rgba(8,20,14,.45),transparent 40%);pointer-events:none}
.sa-ruler{position:absolute;left:22px;top:18%;bottom:14%;width:46px;z-index:2;border-left:1px solid rgba(255,255,255,.85);background:repeating-linear-gradient(0deg,rgba(255,255,255,.85) 0 1px,transparent 1px 10px) left/8px 100% no-repeat;transform-origin:bottom;transform:scaleY(0);transition:transform 1.3s cubic-bezier(.16,.84,.28,1) 1.1s}
.sa-box.in .sa-ruler{transform:none}
.sa-ruler span{position:absolute;left:14px;font-size:11px;letter-spacing:.14em;color:#fff;font-weight:600;white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,.7);padding-left:8px}
.sa-ruler span:before{content:"";position:absolute;left:-14px;top:50%;width:18px;height:1px;background:#d6b678}
.sa-ruler span[data-h="140"]{top:-6px}
.sa-ruler span[data-h="100"]{bottom:-6px}
.sa-seal{right:-62px!important;top:40px!important;width:150px!important;height:150px!important;background:radial-gradient(circle at 30% 25%,#f3dca4,#c9a05a 45%,#8a6127 100%)!important;color:#1a130a!important;border:0;box-shadow:0 22px 50px -12px rgba(0,0,0,.75),inset 0 2px 6px rgba(255,255,255,.5),inset 0 -6px 14px rgba(0,0,0,.25)!important;animation:none!important;transform:rotate(-8deg) scale(0)!important;transition:transform 1s cubic-bezier(.34,1.56,.64,1) 1.3s!important;z-index:5!important}
.sa-box.in .sa-seal{transform:rotate(-8deg) scale(1)!important}
.sa-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:saRot 22s linear infinite}
.sa-seal text{font:600 13.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.08em;fill:#2b1d0b}
@keyframes saRot{to{transform:rotate(360deg)}}
.sa-seal-in{position:relative;width:92px;height:92px;border-radius:50%;background:#10221a;color:#f3dca4;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(243,220,164,.45),0 4px 12px rgba(0,0,0,.4)}
.sa-seal-in b{font-family:var(--serif);font-size:30px!important;line-height:1;color:#f3dca4}
.sa-seal-in span{font-size:10px!important;letter-spacing:.2em;text-transform:uppercase;margin-top:4px;color:rgba(243,220,164,.8)}
.sa-tx{position:relative;z-index:2;padding:clamp(34px,5vw,70px) clamp(26px,4.5vw,64px) clamp(34px,5vw,64px) clamp(48px,7vw,104px)!important}
.sa-tx>*{opacity:0;transform:translateY(18px);transition:opacity .8s,transform .9s cubic-bezier(.16,.84,.28,1)}
.sa-box.in .sa-tx>*{opacity:1;transform:none}
.sa-box.in .sa-tx>*:nth-child(1){transition-delay:.7s}.sa-box.in .sa-tx>*:nth-child(3){transition-delay:1.15s}.sa-box.in .sa-tx>*:nth-child(4){transition-delay:1.3s}.sa-box.in .sa-tx>*:nth-child(5){transition-delay:1.45s}.sa-box.in .sa-tx>*:nth-child(6){transition-delay:1.55s}.sa-box.in .sa-tx>*:nth-child(7){transition-delay:1.75s}
.sa-tx>.sa-h{opacity:1;transform:none}
.sa-tag{background:transparent!important;color:#e6cf9c!important;padding:0!important;display:inline-flex!important;align-items:center;gap:14px;font-size:11.5px!important;letter-spacing:.32em!important}
.sa-tag:before,.sa-tag:after{content:"";width:34px;height:1px;background:linear-gradient(90deg,transparent,#d6b678)}
.sa-tag:after{background:linear-gradient(90deg,#d6b678,transparent)}
.sa-tx h2.sa-h,
.sa-tx h1.ph1.ph1.sa-h{color:#f7f0df!important;font-size:clamp(44px,5.6vw,80px)!important;font-weight:500;letter-spacing:-.01em;margin:22px 0 10px!important;line-height:1.02}
.sa-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .12em .08em 0;margin-right:-.12em}
.sa-w>span{display:inline-block;transform:translateY(110%);transition:transform 1.1s cubic-bezier(.16,.84,.28,1);transition-delay:calc(.85s + var(--w)*.12s)}
.sa-box.in .sa-w>span{transform:none}
.sa-w:last-child>span{font-style:italic;background:linear-gradient(100deg,#b8893e 0%,#f3dca4 40%,#c9a05a 60%,#f3dca4 80%,#b8893e 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:saGold 6s linear infinite;padding-right:.18em;margin-right:-.18em}
@keyframes saGold{to{background-position:-250% 0}}
.sa-sub{color:rgba(243,236,220,.78)!important;font-weight:300}
.sa-price{border-color:rgba(214,182,120,.3)!important;padding:20px 0!important;position:relative;gap:18px!important}
.sa-price b{display:inline-flex;align-items:flex-start;gap:6px;font-size:clamp(76px,8vw,118px)!important;font-weight:500;background:linear-gradient(180deg,#f7e3b0 0%,#d6b678 45%,#9a6f2c 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;filter:drop-shadow(0 6px 18px rgba(214,182,120,.25))}
.sa-price b em{font-style:normal;font-variant-numeric:tabular-nums;min-width:1.05ch;display:inline-block}
.sa-price b small{font-size:.5em;margin-top:.15em}
.sa-price span{color:rgba(243,236,220,.85)!important;font-size:18px!important;letter-spacing:.02em}
.sa-note{color:#e6cf9c!important;font-family:var(--serif);font-style:italic;font-weight:500!important;font-size:clamp(22px,2vw,27px)!important;margin:18px 0 18px!important}
.sa-perks{list-style:none;padding:0;margin:0 0 30px;display:flex;flex-wrap:wrap;gap:8px 10px}
.sa-perks li{font-size:13px;letter-spacing:.04em;color:#f3ecdc;padding:8px 14px 8px 30px;border:1px solid rgba(214,182,120,.35);border-radius:99px;position:relative;background:rgba(255,255,255,.03)}
.sa-perks li:before{content:"";position:absolute;left:13px;top:50%;width:7px;height:7px;margin-top:-3.5px;transform:rotate(45deg);background:#d6b678}
.sa .sa-btn{position:relative;overflow:hidden;background:linear-gradient(135deg,#e7c985,#b8893e)!important;color:#10221a!important;padding:18px 34px!important;letter-spacing:.14em;font-weight:700;box-shadow:0 14px 34px -12px rgba(214,182,120,.6);transition:transform .35s,box-shadow .35s!important}
.sa .sa-btn:before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-20deg);animation:saShine 3.6s ease-in-out 2.4s infinite}
@keyframes saShine{0%{left:-60%}35%,100%{left:130%}}
.sa .sa-btn i{font-style:normal;display:inline-block;transition:transform .3s}
.sa .sa-btn:hover{transform:translateY(-3px);box-shadow:0 20px 44px -12px rgba(214,182,120,.8)}
.sa .sa-btn:hover i{transform:translateX(6px)}
@media(max-width:860px){.sa-box{grid-template-columns:1fr!important}.sa-ph{min-height:300px!important;clip-path:inset(0 0 100% 0)}.sa-box.in .sa-ph{clip-path:inset(0 0 -200px 0)}.sa-seal{right:18px!important;top:auto!important;bottom:-56px!important;width:124px!important;height:124px!important}.sa-seal-in{width:76px;height:76px}.sa-seal-in b{font-size:24px!important}.sa-tx{padding:64px 24px 36px!important}.sa-box:before{inset:8px}}
@media(prefers-reduced-motion:reduce){.sa-box *,.sa-box{animation:none!important;transition:none!important}.sa-ph{clip-path:none!important}.sa-tx>*,.sa-w>span{opacity:1!important;transform:none!important}.sa-seal{transform:rotate(-8deg)!important}.sa-ruler{transform:none}}




/* v33: premium sort block */
.pm-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,6vw,110px);align-items:center}
.pm-media{position:relative;height:clamp(520px,52vw,760px)}
.pm-media.reveal{transform:none!important;opacity:1!important}
.pm-main,.pm-sub{position:absolute;overflow:hidden;border-radius:4px;box-shadow:0 50px 90px -40px rgba(0,0,0,.95);clip-path:inset(100% 0 0 0);transition:clip-path 1.5s cubic-bezier(.77,0,.18,1)}
.pm-main{left:0;top:0;width:76%;height:88%}
.pm-sub{right:0;bottom:0;width:44%;height:46%;border:8px solid #0E1F16;transition-delay:.45s;z-index:2}
.pm-media.in .pm-main,.pm-media.in .pm-sub{clip-path:inset(0)}
.pm-main .mtile,.pm-sub .mtile{position:absolute!important;inset:0!important;height:100%!important;aspect-ratio:auto!important;border-radius:0;margin:0;cursor:zoom-in}
.pm-main img,.pm-sub img{width:100%;height:100%;object-fit:cover;transform:scale(1.22);transition:transform 2.6s cubic-bezier(.16,.84,.28,1)}
.pm-media.in .pm-main img,.pm-media.in .pm-sub img{transform:scale(1.03)}
.pm-media:hover .pm-main img{transform:scale(1.07)}
.pm-frame{position:absolute;left:22px;top:22px;width:76%;height:88%;border:1px solid rgba(214,182,120,.5);border-radius:4px;opacity:0;transform:translate(-14px,-14px);transition:opacity 1s 1s,transform 1.4s cubic-bezier(.16,.84,.28,1) 1s}
.pm-media.in .pm-frame{opacity:1;transform:none}
.pm-vl{position:absolute;right:calc(44% - 6px);top:4%;writing-mode:vertical-rl;font:600 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#e6cf9c;opacity:0;transition:opacity 1s 1.4s;right:4px}
.pm-media.in .pm-vl{opacity:.85}
.pm-tx{position:relative;isolation:isolate}
.pm-big{position:absolute;right:-.04em;top:-.42em;z-index:-1;font-family:var(--serif);font-weight:300;font-size:clamp(180px,22vw,340px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(214,182,120,.3);pointer-events:none;animation:pmDrift 12s ease-in-out infinite alternate}
@keyframes pmDrift{to{transform:translateY(24px)}}
.pm .pm-h{font-size:clamp(40px,4.4vw,70px)!important;line-height:1.03!important;margin:20px 0 22px!important;color:#fff}
.pm-p{max-width:46ch}
.pm-spec{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;border-top:1px solid rgba(214,182,120,.32)}
.pm-spec.reveal{transform:none!important;opacity:1!important}
.pm-spec div{position:relative;padding:22px 20px 22px 0;border-bottom:1px solid rgba(214,182,120,.32);opacity:0;transform:translateY(16px);transition:opacity .8s calc(.2s + var(--i)*.13s),transform .9s cubic-bezier(.16,.84,.28,1) calc(.2s + var(--i)*.13s)}
.pm-spec div:nth-child(even){padding-left:24px;border-left:1px solid rgba(214,182,120,.32)}
.pm-spec.in div{opacity:1;transform:none}
.pm-spec b{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(30px,2.8vw,42px);line-height:1;color:#ecd6a2;margin-bottom:8px;white-space:nowrap}
.pm-spec span{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7);line-height:1.4}
@media(max-width:1000px){.pm-grid{grid-template-columns:1fr;gap:40px}.pm-media{height:clamp(420px,110vw,560px)}.pm-main{width:84%}.pm-frame{width:84%}.pm-big{font-size:150px;top:-.3em}.pm-vl{display:none}}
@media(prefers-reduced-motion:reduce){.pm-main,.pm-sub{clip-path:none!important}.pm-spec div{opacity:1;transform:none}.pm-big{animation:none}}
/* v33: intro left video - show the person */
.tj-vf.l .tj-vf-in{aspect-ratio:464/848}
.tj-vf.l .tj-vf-in video{object-position:92% 50%;transform-origin:85% 50%}
.tj-vwrap{grid-template-columns:minmax(0,1.15fr) minmax(0,1.45fr) minmax(0,1fr)!important}
/* v33: selection section - harmonious layout */
.sel2{display:block!important}
.sel2-tx{display:grid;grid-template-columns:1.15fr 1fr;column-gap:clamp(28px,6vw,110px);align-items:end;margin-bottom:clamp(36px,4.5vw,64px)}
.sel2-tx .eyebrow{grid-column:1/-1;margin-bottom:16px}
.sel2-tx h2,
.sel2-tx h1.ph1.ph1{margin:0!important;font-size:clamp(38px,4.3vw,66px)!important;line-height:1.04!important;max-width:15ch}
.sel2-tx .lead{margin:0 0 .4em!important;max-width:42ch;padding-left:clamp(0px,2vw,28px);border-left:1px solid rgba(214,182,120,.45)}
.sel2-g{grid-template-columns:repeat(4,1fr)!important;gap:clamp(14px,1.6vw,26px)!important;align-items:start}
.sel2-c:nth-child(even){margin-top:clamp(34px,4.5vw,72px)}
.sel2-c .mtile{aspect-ratio:3/4.3!important}
.sel2-n{top:16px!important;left:18px!important;font-size:13px!important;letter-spacing:.24em!important}
.sel2-c .mc{font-size:clamp(15px,1.15vw,18px)!important;line-height:1.25!important}
@media(max-width:900px){.sel2-tx{grid-template-columns:1fr;row-gap:18px}.sel2-tx .lead{padding-left:16px}.sel2-g{grid-template-columns:1fr 1fr!important}.sel2-c:nth-child(even){margin-top:28px}.sel2-c:last-child{grid-column:auto!important}.sel2-c:last-child .mtile{aspect-ratio:3/4.3!important}}
/* v32: about slideshow */
.ab-vis .ab-stat{right:auto!important;left:0!important;top:9%!important;bottom:auto!important}
.ab-vis .ab-cap{top:auto!important;bottom:4%!important}
@media(max-width:980px){.ab-vis .ab-stat{left:-6px!important;top:-18px!important}}
.ab-main.abs{width:86%!important;height:96%!important;background:#0b1a12}
.ab-vis .ab-frame{width:86%;height:96%}
.abs-s{position:absolute;inset:0;margin:0;overflow:hidden;clip-path:inset(100% 0 0 0);transition:clip-path 1s cubic-bezier(.77,0,.18,1);z-index:1;cursor:zoom-in}
.abs-s.on{clip-path:inset(0);z-index:3}
.abs-s.out{clip-path:inset(0);z-index:2;transition:none}
.abs-s video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.abs-s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12)!important;transition:transform 5s cubic-bezier(.2,.6,.3,1)!important}
.abs-s.on img,.abs-s.out img{transform:scale(1.02)!important}
.abs-s.out img{transform:scale(.96)!important;transition:transform 1s cubic-bezier(.77,0,.18,1)!important}
.abs-s:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,16,10,.78) 0%,rgba(6,16,10,.15) 32%,transparent 55%);pointer-events:none}
.abs-s figcaption{position:absolute;left:28px;bottom:66px;z-index:2;overflow:hidden;font:italic 400 clamp(20px,1.8vw,26px)/1.2 var(--serif);color:#f5eedd}
.abs-s figcaption span{display:block;transform:translateY(110%);transition:transform .8s cubic-bezier(.16,.84,.28,1) .45s}
.abs-s.on figcaption span{transform:none}
.abs-ui{position:absolute;left:28px;right:28px;bottom:26px;z-index:5;display:flex;align-items:center;gap:18px}
.abs-n{font:500 11px/1 var(--sans);letter-spacing:.2em;color:rgba(245,238,221,.6);white-space:nowrap}
.abs-n b{color:#f0d9a2;font-weight:600}
.abs-bars{display:flex;gap:7px;flex:1;max-width:280px}
.abs-bars button{flex:1;height:14px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.abs-bars button:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(245,238,221,.3)}
.abs-bars i{position:absolute;left:0;top:50%;height:1px;width:0;background:#f0d9a2}
.abs-bars button.done i{width:100%}
.abs-bars button.run i{animation:absBar var(--dur,6s) linear forwards}
.ab-vis:hover .abs-bars button.run i{animation-play-state:paused}
@keyframes absBar{to{width:100%}}
@media(max-width:980px){.ab-main.abs{width:100%!important;height:88%!important}.ab-vis .ab-frame{width:100%;height:88%}.abs-s figcaption{left:18px;bottom:56px}.abs-ui{left:18px;right:18px;bottom:20px}}
@media(prefers-reduced-motion:reduce){.abs-s,.abs-s img,.abs-s figcaption span{transition:none!important}}
/* ===== v32: promo "measure your thuja" ===== */
section.sx{position:relative;padding:clamp(80px,10vw,150px) 0!important;background:#06120c!important;color:#f3ecdc;overflow:hidden;isolation:isolate}
.sx:before,.sx:after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(214,182,120,.7) 20%,rgba(214,182,120,.7) 80%,transparent);transform:scaleX(0);transition:transform 1.8s cubic-bezier(.77,0,.18,1);z-index:3}
.sx:before{top:0;transform-origin:left}.sx:after{bottom:0;transform-origin:right}
.sx.on:before,.sx.on:after{transform:none}
.sx-bg{position:absolute;inset:-40px;z-index:-3;overflow:hidden}
.sx-bg img{width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.18);filter:saturate(.75) brightness(.8);transition:opacity 2s,transform 3.2s cubic-bezier(.16,.84,.28,1)}
.sx.on .sx-bg img{opacity:.42;transform:scale(1.06) translate(var(--px,0),var(--py,0))}
.sx-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,18,12,.72) 0%,rgba(6,18,12,.5) 40%,rgba(6,18,12,.9) 62%,rgba(6,18,12,.96) 100%),linear-gradient(0deg,#06120c 0%,transparent 35%,transparent 70%,rgba(6,18,12,.9) 100%)}
.sx-sun{position:absolute;z-index:-2;left:-15%;top:-35%;width:80vw;height:80vw;border-radius:50%;background:radial-gradient(circle,rgba(236,204,140,.18),rgba(236,204,140,.05) 35%,transparent 62%);animation:sxSun 16s ease-in-out infinite alternate;pointer-events:none}
@keyframes sxSun{to{transform:translate(8vw,6vw) scale(1.1)}}
.sx-grain{position:absolute;inset:0;z-index:-1;opacity:.09;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.sx-dust{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sx-dust i{position:absolute;left:var(--x);bottom:-10px;width:var(--z);height:var(--z);border-radius:50%;background:#f3dca4;box-shadow:0 0 10px 1px rgba(243,220,164,.8);opacity:0;animation:sxDust var(--t) linear var(--dl) infinite}
@keyframes sxDust{0%{opacity:0;transform:translate(0,0)}12%{opacity:.7}70%{opacity:.35}100%{opacity:0;transform:translate(60px,-110vh)}}

.sx-in{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(40px,7vw,120px);align-items:center;position:relative}

/* ---- stage ---- */
.sx-stage{position:relative;user-select:none;-webkit-user-select:none}
.sx-meter{position:relative;height:clamp(400px,60vh,580px);touch-action:none;cursor:ns-resize}
.sx-scale{position:absolute;left:0;top:0;bottom:0;width:66px;border-right:1px solid rgba(214,182,120,.55);transform:scaleY(0);transform-origin:bottom;transition:transform 1.4s cubic-bezier(.77,0,.18,1) .3s}
.sx.on .sx-scale{transform:none}
.sx-scale i{position:absolute;right:0;bottom:calc(var(--c) / 150 * 100%);width:7px;height:1px;background:rgba(243,236,220,.35);transform:scaleX(0);transform-origin:right;transition:transform .5s cubic-bezier(.16,.84,.28,1) calc(.6s + var(--c) * 8ms)}
.sx-scale i.M{width:14px;background:rgba(243,236,220,.6)}
.sx.on .sx-scale i{transform:none}
.sx-scale i span{position:absolute;right:22px;top:-.72em;font:500 10.5px/1.4 var(--sans);letter-spacing:.12em;color:rgba(243,236,220,.5);white-space:nowrap}
.sx-scale i.G span{color:#d9bd84}
.sx-band{position:absolute;right:-2px;width:3px;bottom:calc(100 / 150 * 100%);height:calc(40 / 150 * 100%);background:linear-gradient(0deg,#9a6f2c,#f0d9a2);transform:scaleY(0);transform-origin:bottom;transition:transform 1s cubic-bezier(.16,.84,.28,1) 1.8s}
.sx.on .sx-band{transform:none}
.sx-plot{position:absolute;left:66px;right:0;top:0;bottom:0}
.sx-ground{position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,rgba(214,182,120,.6),rgba(214,182,120,.15) 70%,transparent)}
.sx-shadow{position:absolute;left:50%;bottom:-12px;width:220px;height:26px;margin-left:-110px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.65),transparent);transform:scaleX(var(--sh,0));transition:transform .2s}
.sx-tree{position:absolute;left:50%;bottom:0;height:100%;transform-origin:50% 100%;transform:translateX(-50%) scale(var(--s,0));will-change:transform}
.sx-sway{height:100%;transform-origin:50% 100%;animation:sxSway 7s ease-in-out infinite}
@keyframes sxSway{0%,100%{transform:rotate(-.5deg)}50%{transform:rotate(.6deg) skewX(-.4deg)}}
.sx-tree img{height:100%;width:auto;display:block;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 14%,#000 86%,transparent 100%);filter:drop-shadow(0 24px 30px rgba(0,0,0,.55)) saturate(1.05)}
.sx-mark{position:absolute;left:0;right:0;bottom:calc(var(--s,0) * 100%);height:0;pointer-events:none;opacity:0;transition:opacity .6s 1s}
.sx.on .sx-mark{opacity:1}
.sx-mark:before{content:"";position:absolute;left:66px;width:calc((100% - 66px) / 2 - 10px);top:0;border-top:1px dashed rgba(240,217,162,.75)}
.sx-mark:after{content:"";position:absolute;left:calc(66px + (100% - 66px) / 2 - 14px);top:-4px;width:8px;height:8px;border-radius:50%;background:#f0d9a2;box-shadow:0 0 0 5px rgba(240,217,162,.18)}
.sx-mark b{position:absolute;right:calc(100% - 66px);top:0;transform:translate(0,-50%);background:#f0d9a2;color:#0b1a12;font:600 12px/1 var(--sans);letter-spacing:.06em;padding:7px 10px 7px 11px;white-space:nowrap;font-variant-numeric:tabular-nums}
.sx-mark b:after{content:"";position:absolute;left:100%;top:50%;margin-top:-5px;border:5px solid transparent;border-left-color:#f0d9a2}

.sx-ctrl{display:flex;align-items:center;gap:16px;margin:34px 0 0 66px;font:500 11px var(--sans);letter-spacing:.14em;color:rgba(243,236,220,.55);opacity:0;transform:translateY(12px);transition:opacity .8s 2s,transform .8s 2s}
.sx.on .sx-ctrl{opacity:1;transform:none}
.sx-range{-webkit-appearance:none;appearance:none;flex:1;height:22px;background:transparent;cursor:pointer;margin:0}
.sx-range::-webkit-slider-runnable-track{height:1px;background:linear-gradient(90deg,#f0d9a2 var(--p,0%),rgba(243,236,220,.25) var(--p,0%))}
.sx-range::-moz-range-track{height:1px;background:rgba(243,236,220,.25)}
.sx-range::-moz-range-progress{height:1px;background:#f0d9a2}
.sx-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-10px;border-radius:50%;background:#f0d9a2;border:5px solid #06120c;box-shadow:0 0 0 1px #f0d9a2,0 0 0 0 rgba(240,217,162,.5);animation:sxPing 2.4s ease-out infinite}
.sx-range::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#f0d9a2;border:4px solid #06120c;box-shadow:0 0 0 1px #f0d9a2}
.sx-range:focus-visible{outline:1px solid #f0d9a2;outline-offset:6px}
@keyframes sxPing{0%{box-shadow:0 0 0 1px #f0d9a2,0 0 0 0 rgba(240,217,162,.45)}80%,100%{box-shadow:0 0 0 1px #f0d9a2,0 0 0 16px rgba(240,217,162,0)}}
.sx-hint{margin:14px 0 0 66px!important;font:italic 400 17px/1.3 var(--serif);color:rgba(243,236,220,.6)!important;opacity:0;transition:opacity 1s}
.sx-hint.show{opacity:1}

/* ---- text ---- */
.sx-tx{position:relative}
.sx-tx *{text-shadow:none!important}
.sx-kick{display:flex;align-items:center;gap:14px;font:600 11.5px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:#d9bd84;opacity:0;transition:opacity 1s .4s}
.sx-kick i{display:block;height:1px;width:0;background:#d9bd84;transition:width 1.2s cubic-bezier(.77,0,.18,1) .4s}
.sx-kick small{font:inherit;letter-spacing:.24em;color:rgba(243,236,220,.4)}
.sx.on .sx-kick{opacity:1}.sx.on .sx-kick i{width:46px}
.sx .sx-h{font-family:var(--serif);font-weight:400;color:#f5eedd!important;font-size:clamp(50px,5.8vw,96px)!important;line-height:.92!important;letter-spacing:-.02em;margin:26px 0 22px!important}
.sx-ln{display:block;overflow:hidden;padding:0 .1em .1em 0;margin-bottom:-.1em}
.sx-ln>span{display:block;transform:translateY(105%) rotate(2deg);transform-origin:left bottom;transition:transform 1.3s cubic-bezier(.16,.84,.28,1)}
.sx-ln:nth-child(2)>span{transition-delay:.15s;padding-left:.9em}
.sx.on .sx-ln>span{transform:none}
.sx-h em{font-style:italic;color:#e3c68b}
.sx-sub{font-size:clamp(17px,1.5vw,20px)!important;font-weight:300;color:rgba(243,236,220,.72)!important;margin:0 0 34px!important;max-width:34ch;opacity:0;transform:translateY(14px);transition:opacity 1s .55s,transform 1s .55s}
.sx.on .sx-sub{opacity:1;transform:none}

.sx-price{position:relative;display:flex;align-items:flex-end;gap:clamp(20px,3vw,40px);flex-wrap:wrap;padding:26px 0 24px;border-top:1px solid rgba(214,182,120,.28);border-bottom:1px solid rgba(214,182,120,.28);opacity:0;transform:translateY(16px);transition:opacity 1s .75s,transform 1s .75s}
.sx.on .sx-price{opacity:1;transform:none}
.sx-big{display:flex;align-items:flex-start;font-family:var(--serif);font-weight:500;font-size:clamp(104px,11vw,172px);line-height:.82;color:#ecd6a2;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.04em}
.sx-d{display:inline-block;height:1em;overflow:hidden;line-height:1;vertical-align:top}
.sx-d>span{display:block;transition:transform .9s cubic-bezier(.2,.9,.2,1)}
.sx-d>span>b{display:block;height:1em;font-weight:inherit}
.sx-sup{display:flex;flex-direction:column;align-items:flex-start;font-size:.3em;line-height:1;margin:.14em 0 0 .12em;letter-spacing:0}
.sx-sup .cents{display:flex;border-bottom:1px solid rgba(217,184,118,.6);padding-bottom:.08em}
.sx-sup .cents{color:#e3c68b}
.sx-sup em{font-style:normal;color:#e3c68b;margin-top:.18em}
.sx-calc{display:flex;flex-direction:column;gap:8px;padding-bottom:10px}
.sx-calc small{font:600 10.5px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:rgba(243,236,220,.45)}
.sx-calc span{font:400 17px/1.3 var(--sans);color:rgba(243,236,220,.88);font-variant-numeric:tabular-nums;white-space:nowrap}
.sx-calc span b{color:#f0d9a2;font-weight:600}
.sx-note{font:italic 500 clamp(22px,2vw,28px)/1.3 var(--serif)!important;color:#e3c68b!important;margin:22px 0 26px!important;opacity:0;transition:opacity 1s 1s}
.sx.on .sx-note{opacity:1}
.sx-list{list-style:none;margin:0 0 38px;padding:0;counter-reset:none}
.sx-list li{position:relative;display:grid;grid-template-columns:48px 1fr;align-items:baseline;padding:13px 0;font-size:15px;letter-spacing:.02em;color:rgba(243,236,220,.86);opacity:0;transform:translateX(-14px);transition:opacity .8s calc(1.1s + var(--p) * .14s),transform .9s cubic-bezier(.16,.84,.28,1) calc(1.1s + var(--p) * .14s)}
.sx-list li:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(214,182,120,.2);transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.77,0,.18,1) calc(1.2s + var(--p) * .14s)}
.sx-list li i{font:italic 500 17px/1 var(--serif);color:#d9bd84;letter-spacing:.04em}
.sx.on .sx-list li{opacity:1;transform:none}.sx.on .sx-list li:after{transform:none}
.sx-btn{box-shadow:inset 0 0 0 1px #ecd6a2;position:relative;display:inline-flex;align-items:center;gap:22px;padding:21px 30px 21px 34px;background:#ecd6a2;color:#0b1a12!important;font:600 12.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;text-decoration:none;overflow:hidden;isolation:isolate;opacity:0;clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1) 1.55s,opacity .1s 1.55s,color .45s}
.sx.on .sx-btn{opacity:1;clip-path:inset(0 0 0 0)}
.sx-btn:before{content:"";position:absolute;inset:0;z-index:-1;background:#0b1a12;transform:scaleX(0);transform-origin:right;transition:transform .6s cubic-bezier(.77,0,.18,1)}
.sx-btn i{position:relative;display:block;width:34px;height:1px;background:currentColor;transition:width .5s cubic-bezier(.16,.84,.28,1)}
.sx-btn i:after{content:"";position:absolute;right:0;top:-3.5px;width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.sx-btn:hover{color:#ecd6a2!important}
.sx-btn:hover:before{transform:scaleX(1);transform-origin:left}
.sx-btn:hover i{width:52px}
.sx-btn-wrap{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sx-btn-wrap small{font:400 13px/1.4 var(--sans);color:rgba(243,236,220,.5);max-width:22ch;opacity:0;transition:opacity 1s 2s}
.sx.on .sx-btn-wrap small{opacity:1}

@media(max-width:900px){
  .sx-in{grid-template-columns:1fr;gap:10px}
  .sx-in{display:flex;flex-direction:column;align-items:stretch}
  .sx-tx{display:contents}
  .sx-tx>*{order:1}
  .sx-stage{order:2;margin:6px 0 34px}
  .sx-price,.sx-note,.sx-list,.sx-btn-wrap{order:3}
  .sx-meter{height:380px}
  .sx .sx-h{font-size:clamp(44px,12.5vw,72px)!important}
  .sx-bg:after{background:linear-gradient(180deg,rgba(6,18,12,.92) 0%,rgba(6,18,12,.75) 50%,rgba(6,18,12,.9) 100%)}
  .sx-kick small{display:none}
}
@media(prefers-reduced-motion:reduce){
  .sx *,.sx:before,.sx:after{animation:none!important;transition:none!important}
  .sx-ln>span,.sx-list li,.sx-sub,.sx-price,.sx-scale,.sx-scale i,.sx-band{transform:none!important}
  .sx-kick,.sx-sub,.sx-price,.sx-note,.sx-list li,.sx-btn,.sx-ctrl,.sx-mark{opacity:1!important}
  .sx-btn{clip-path:none!important}
}

/* v22: placeholder for new photo */
.ab-main.ab-empty,.lx.ab-empty{background:rgba(8,20,14,.55);border:1px dashed rgba(214,182,120,.6);display:flex;align-items:center;justify-content:center}
.ab-ph span{font-family:var(--serif);font-size:22px;letter-spacing:.2em;text-transform:uppercase;color:rgba(214,182,120,.8)}

.whyph video{width:100%;height:100%;object-fit:cover;display:block}

/* v31: CTA collage premium */
.cta2-r{height:clamp(520px,46vw,660px)!important}
.cta2-ph.nv{border:0!important;box-shadow:0 40px 80px -30px rgba(0,0,0,.95)}
.cta2-ph.nv video,.cta2-ph.nv .mtile img{width:100%;height:100%;object-fit:cover;display:block}
.cta2-arch-fr{position:absolute;left:-12px;top:-12px;width:calc(48% + 24px);height:calc(90% + 24px);border:1px solid rgba(240,201,106,.5);border-radius:999px 999px 16px 16px;pointer-events:none;opacity:0;transform:scale(.95);transition:opacity 1s 1s,transform 1.4s cubic-bezier(.16,.84,.28,1) 1s}
.cta2-r.in .cta2-arch-fr{opacity:1;transform:none}
.cta2-ph.a.nv{left:0;right:auto;top:0;width:48%;height:90%;z-index:2;border-radius:999px 999px 12px 12px;clip-path:inset(100% 0 0 0 round 999px 999px 12px 12px);transition:clip-path 1.5s cubic-bezier(.77,0,.18,1)}
.cta2-r.in .cta2-ph.a.nv{clip-path:inset(0 0 0 0 round 999px 999px 12px 12px)}
.cta2-ph.a.nv:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,11,.5),transparent 40%);pointer-events:none}
.cta2-ph.b.nv,.cta2-ph.c.nv{border-radius:12px;width:46%;left:auto;right:0}
.cta2-ph.b.nv{top:4%;bottom:auto;height:44%;clip-path:inset(0 0 100% 0 round 12px);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1) .35s}
.cta2-ph.c.nv{top:52%;height:36%;clip-path:inset(0 100% 0 0 round 12px);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1) .65s}
.cta2-r.in .cta2-ph.b.nv,.cta2-r.in .cta2-ph.c.nv{clip-path:inset(0 round 12px)}
.cta2-r.in .cta2-ph.b.nv{animation:ctaFl 7s ease-in-out 2s infinite}
.cta2-r.in .cta2-ph.c.nv{animation:ctaFl 7s ease-in-out 3.5s infinite reverse}
@keyframes ctaFl{50%{transform:translateY(-8px)}}
.cta2-ph.nv:not(.a):after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(0deg,rgba(8,16,11,.7),transparent 45%);pointer-events:none}
.cta2-cap{position:absolute;right:18px;bottom:14px;z-index:2;font-family:var(--serif);font-style:italic;font-size:19px;color:#fff;display:flex;align-items:baseline;gap:10px;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.cta2-cap i{font-style:normal;font-size:11px;letter-spacing:.28em;color:#f0c96a}
.cta2-seal{position:absolute;left:calc(48% - 58px);top:calc(48% - 58px);width:116px;height:116px;z-index:4;border-radius:50%;background:radial-gradient(circle at 30% 25%,#1d3527,#0b1811);box-shadow:0 18px 40px -12px rgba(0,0,0,.9),inset 0 0 0 1px rgba(240,201,106,.5);display:grid;place-items:center;transform:scale(0);transition:transform .9s cubic-bezier(.34,1.56,.64,1) 1.4s}
.cta2-r.in .cta2-seal{transform:scale(1)}
.cta2-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:saRot 26s linear infinite}
.cta2-seal text{font:600 13px/1 'Inter',system-ui,sans-serif;letter-spacing:.06em;fill:#f0c96a}
.cta2-seal span{color:#f0c96a;font-size:20px}
.cta2-r .cta2-card{left:8%!important;right:auto!important;bottom:-4%!important;background:rgba(8,20,12,.72)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:5}
@media(max-width:900px){.cta2-r{height:clamp(440px,120vw,560px)!important}.cta2-seal{width:84px;height:84px;left:calc(48% - 42px);top:calc(48% - 42px)}.cta2-seal text{font-size:15px}.cta2-cap{font-size:15px;right:10px;bottom:10px}.cta2-r .cta2-card{left:4%!important;bottom:-2%!important}.cta2-arch-fr{left:-7px;top:-7px;width:calc(48% + 14px);height:calc(90% + 14px)}}
@media(prefers-reduced-motion:reduce){.cta2-ph.nv{animation:none!important}.cta2-seal svg{animation:none}}

/* v28: Sorte 02 combo */
.tj-combo{position:relative}
.tj-ins{position:absolute;right:-44px;top:64px;width:54%;aspect-ratio:4/3;border:6px solid #0E1F16;border-radius:6px;overflow:hidden;z-index:2;box-shadow:0 30px 60px -20px rgba(0,0,0,.9);clip-path:inset(0 0 100% 0);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1) .5s}
.tj-cnt.in .tj-ins{clip-path:inset(0)}
.tj-ins img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.12);transition:transform 2s cubic-bezier(.16,.84,.28,1) .5s}
.tj-cnt.in .tj-ins img{transform:none}
@media(max-width:900px){.tj-ins{right:10px;top:10px;width:46%}}
@media(prefers-reduced-motion:reduce){.tj-ins{clip-path:none;transition:none}}

/* v29: Thujen intro with two arch videos */
.tj-vwrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,64px);max-width:1380px}
.tj-vwrap .tj-state{max-width:none}
.tj-orn{display:flex;align-items:center;justify-content:center;gap:14px;font-family:var(--serif);font-style:italic;color:var(--sand);font-size:17px;letter-spacing:.06em}
.tj-orn span{width:46px;height:1px;background:linear-gradient(90deg,transparent,var(--sand))}
.tj-orn span:last-child{background:linear-gradient(90deg,var(--sand),transparent)}
.tj-vf{position:relative;margin:0;will-change:transform}
.tj-vf.r{margin-top:clamp(80px,10vw,160px)}
.tj-vf.l{margin-bottom:clamp(80px,10vw,160px)}
.tj-vf:before{content:"";position:absolute;inset:-14px;border:1px solid rgba(194,168,120,.45);border-radius:999px 999px 10px 10px;pointer-events:none;opacity:0;transform:scale(.96);transition:opacity 1s .9s,transform 1.4s cubic-bezier(.16,.84,.28,1) .9s}
.tj-vf.in:before{opacity:1;transform:none}
.tj-vf-in{position:relative;aspect-ratio:9/15;border-radius:999px 999px 10px 10px;overflow:hidden;box-shadow:0 50px 90px -40px rgba(0,0,0,.95);clip-path:inset(100% 0 0 0 round 999px 999px 10px 10px);transition:clip-path 1.6s cubic-bezier(.77,0,.18,1) .2s}
.tj-vf.r .tj-vf-in{transition-delay:.45s}
.tj-vf.in .tj-vf-in{clip-path:inset(0 0 0 0 round 999px 999px 10px 10px)}
.tj-vf-in video{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.2);transition:transform 2.4s cubic-bezier(.16,.84,.28,1) .2s}
.tj-vf.in .tj-vf-in video{transform:scale(1.02)}
.tj-vf-in:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,11,.55),transparent 35%);pointer-events:none}
.tj-vf figcaption{position:absolute;left:0;right:0;bottom:22px;z-index:2;text-align:center;font-family:var(--serif);font-style:italic;font-size:18px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.tj-vf figcaption i{display:block;font-style:normal;font-family:inherit;font-size:12px;letter-spacing:.3em;color:var(--sand);margin-bottom:4px}
.tj-vf.reveal{transform:none;opacity:1}
.tj-vf.c{grid-column:2;width:min(100%,340px);justify-self:center;margin-top:clamp(20px,3vw,40px)}
@media(max-width:1000px){.tj-vf.c{grid-column:1/-1;width:50%;margin-top:24px}}
@media(max-width:1000px){.tj-vwrap{grid-template-columns:1fr 1fr;gap:22px 16px}.tj-vwrap .tj-state{grid-column:1/-1;grid-row:1}.tj-vf.l,.tj-vf.r{margin:0}.tj-vf.r{margin-top:48px}.tj-vf:before{inset:-8px}.tj-vf figcaption{font-size:15px;bottom:14px}}
@media(prefers-reduced-motion:reduce){.tj-vf-in{clip-path:none;transition:none}.tj-vf-in video{transform:none}}

/* ===== FIX 02.10: descenders (g, y, p) not clipped in word-mask animations ===== */
.sp,.tw,#intro .in-name .w,.sa-w{padding-bottom:.3em!important;margin-bottom:-.3em!important;padding-right:.14em!important;margin-right:-.14em!important}
.sp{vertical-align:top}
/* ===== FIX: offer CTA button - real border, not clipped ===== */
.sx-btn{box-shadow:none!important;border:1px solid #ecd6a2!important}
.sx.on .sx-btn{clip-path:inset(-4px -4px -4px -4px)}
.sx-btn:before{inset:0}
/* ===== FIX: services list - no thumbnails / floating preview ===== */
.svi img,.svprev{display:none!important}
.svi{grid-template-columns:44px 1fr 48px!important}
@media(max-width:600px){.svi{grid-template-columns:1fr!important}}
/* ===== FIX: lead forms - clean, no horizontal scroll, custom dropdown ===== */
.lm-box{overflow-x:hidden!important;overflow-y:auto}
.lead-form,.lead-form .row2,.lead-form .field{min-width:0}
.lead-form .row2{gap:14px}
.lead-form .field{margin-bottom:16px}
.lead-form input,.lead-form textarea,.lead-form .csel-btn{width:100%;max-width:100%;background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:4px!important;padding:13px 14px!important;color:#fff!important;font:400 15px/1.3 var(--sans)!important;transition:border-color .25s,background .25s}
.lead-form input:focus,.lead-form textarea:focus,.lead-form .csel.open .csel-btn,.lead-form .csel-btn:focus{outline:0;border-color:#d6b678!important;background:rgba(255,255,255,.08)!important}
.lead-form textarea{resize:none!important;height:110px;min-height:0;max-height:160px;display:block}
.lead-form .field:after{display:none}
.lead-form select{display:none!important}
.csel{position:relative}
.csel-btn{display:flex!important;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left}
.csel-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.csel-btn:after{content:"";flex:0 0 auto;width:8px;height:8px;border-right:1.5px solid #d6b678;border-bottom:1.5px solid #d6b678;transform:translateY(-3px) rotate(45deg);transition:transform .25s}
.csel.open .csel-btn:after{transform:translateY(2px) rotate(-135deg)}
.csel-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;margin:0;padding:6px;list-style:none;background:#0f1d15;border:1px solid rgba(214,182,120,.35);border-radius:6px;box-shadow:0 24px 50px -16px rgba(0,0,0,.85);max-height:260px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .2s,visibility .2s}
.csel.open .csel-list{opacity:1;visibility:visible;transform:none}
.csel-list li{padding:11px 12px;border-radius:4px;color:rgba(255,255,255,.85);font:400 15px/1.3 var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}
.csel-list li:hover,.csel-list li.hl{background:rgba(214,182,120,.12);color:#fff}
.csel-list li.sel{color:#ecd6a2}
.csel-list li.sel:after{content:"";width:5px;height:10px;border-right:1.5px solid #d6b678;border-bottom:1.5px solid #d6b678;transform:rotate(45deg) translate(-2px,-2px)}
.lf-msg.err small{display:block;opacity:.6;margin-top:6px;font-size:12px}

/* ===== FIX: footer - aligned columns, no extra lines ===== */
.fgrid{border-bottom:0!important;padding-bottom:10px!important;align-items:start}
.flegal{border-top:0!important;padding-top:0!important}
.fgrid h4{line-height:1!important;margin-top:0}
.f-brand{font-family:var(--serif);font-size:22px;line-height:1;color:#fff;margin:-5px 0 14px}
/* ===== FIX: bigger arrow in "Anfragen" ===== */
.svlink i{width:42px!important;height:42px!important;font-size:22px!important;line-height:1!important;font-weight:400}

/* no enlarging outside Galerie; hide browser video hover toolbars (Edge/Chrome PiP etc.) */
#app [data-lb],#app .mtile,#app .lg-item,#app .abs-s,.tj-show .mtile,.pm-main .mtile,.pm-sub .mtile{cursor:default!important}
#app #gal [data-lb]{cursor:zoom-in!important}
#app video{pointer-events:none}
video::-webkit-media-controls-overlay-enclosure{display:none!important}

/* process: full vertical videos (text in video visible), long note under the steps */
.proc .pph{aspect-ratio:9/16}
.proc .pph:after{background:linear-gradient(180deg,transparent 70%,rgba(6,16,10,.8))}
.proc-note{margin:clamp(28px,3vw,40px) 0 0;padding:20px 26px;border-left:2px solid #f0c96a;background:rgba(8,20,12,.55);border-radius:0 10px 10px 0;font-size:15px;line-height:1.65;max-width:none}
@media(max-width:560px){.proc .pph{aspect-ratio:4/5}}

/* height chart: 3 sizes spread evenly, tree width proportional to height */
.ps-cols{grid-template-columns:repeat(3,1fr)!important;gap:clamp(10px,2vw,28px)!important;padding:0 clamp(10px,3vw,40px)}
.ps-tree{width:calc(clamp(44px,5.6vw,84px) * var(--h) / 100)!important}
.ps-lbl{font-size:13px}
@media(max-width:900px){.ps-tree{width:calc(clamp(40px,11vw,70px) * var(--h) / 100)!important}}

/* Thujen intro, mobile: 01 + 02 side by side, equal, aligned */
@media(max-width:1000px){
  .tj-vwrap{grid-template-columns:1fr 1fr!important;column-gap:18px!important;row-gap:34px!important}
  .tj-vwrap .tj-vf.l{grid-column:1;grid-row:2;margin:0!important}
  .tj-vwrap .tj-vf.r{grid-column:2;grid-row:2;margin:0!important}
  .tj-vwrap .tj-vf.l,.tj-vwrap .tj-vf.r{width:100%!important;justify-self:stretch!important;align-self:start}
  .tj-vwrap .tj-vf.l .tj-vf-in,.tj-vwrap .tj-vf.r .tj-vf-in{aspect-ratio:9/15}
  .tj-vwrap .tj-vf{transform:none!important}
}



#brandSub{display:none!important}

@media(max-width:900px){
 .hero{padding-top:104px!important}
 .hero .hnav{display:none!important}
}

/* Galerie: nur Fotos, gleichmäßiges Raster */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pgrid .mtile{aspect-ratio:4/3;border-radius:10px;box-shadow:0 24px 50px -28px rgba(0,0,0,.85);cursor:zoom-in}
.pgrid .mtile img{width:100%;height:100%;object-fit:cover;display:block}
.pgrid .mtile:after{display:none!important}
.pgrid .mtile:hover img{transform:scale(1.04)}
.pgrid .mtile .mc{padding:40px 14px 12px;font:500 13px/1.35 Inter,system-ui,sans-serif!important;letter-spacing:.02em}
@media(max-width:999px){.pgrid{grid-template-columns:repeat(2,1fr);gap:10px}}
@media(max-width:520px){.pgrid{gap:8px}.pgrid .mtile{border-radius:8px}.pgrid .mtile .mc{padding:28px 9px 8px;font-size:11px!important}}

/* pgrid-even: letzte Reihe immer bündig */
.pgrid{container-type:inline-size}
.pgrid .mtile img{position:absolute;inset:0}
@media(min-width:1000px){
.pgrid .mtile:last-child:nth-child(4n+3),.pgrid .mtile:nth-last-child(2):nth-child(4n+1),.pgrid .mtile:last-child:nth-child(4n+2),.pgrid .mtile:last-child:nth-child(4n+1){grid-column:span 2;aspect-ratio:auto;height:calc((100cqw - 42px) / 4 * .75)}
.pgrid .mtile:last-child:nth-child(4n+1){grid-column:1/-1}
}
@media(max-width:999px){.pgrid .mtile:last-child:nth-child(odd){grid-column:1/-1;aspect-ratio:auto;height:calc((100cqw - 10px) / 2 * .75)}}
@media(max-width:520px){.pgrid .mtile:last-child:nth-child(odd){height:calc((100cqw - 8px) / 2 * .75)}}

/* Impressum & Datenschutz */
.lg-hero .phl{max-width:860px}
.lg-toc{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.lg-toc a{border:1px solid rgba(255,255,255,.45);color:#fff;padding:12px 20px;border-radius:2px;font:500 12.5px/1 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:.25s}
.lg-toc a:hover{background:#C2A878;border-color:#C2A878;color:#0E1F16}
.lg-sec{padding-top:10px}
.legal{max-width:880px;background:rgba(8,20,13,.84);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;padding:clamp(24px,4.5vw,60px);color:rgba(255,255,255,.88);font:400 16px/1.72 Inter,system-ui,sans-serif;box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.legal *{text-shadow:none!important}
.legal h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(30px,4vw,44px);line-height:1.1;color:#fff;margin:0 0 20px;scroll-margin-top:110px}
.legal h2:not(:first-child){margin-top:60px;padding-top:44px;border-top:1px solid rgba(255,255,255,.14)}
.legal h3{font:600 13px/1.4 Inter,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#C2A878;margin:32px 0 10px}
.legal p{margin:0 0 14px;color:rgba(255,255,255,.88)}
.legal b{color:#fff;font-weight:600}
.legal a{color:#f0c96a;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal .kv{list-style:none;padding:0;margin:20px 0 6px;border-top:1px solid rgba(255,255,255,.12)}
.legal .kv li{display:grid;grid-template-columns:210px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12);margin:0}
.legal .kv li:before{display:none}
.legal .kv span{color:rgba(255,255,255,.58);font-size:14px}
.legal .kv b{font-weight:500}
.legal .stand{margin-top:34px;font-size:13px;color:rgba(255,255,255,.5)}
@media(max-width:640px){.legal{font-size:15px;border-radius:10px}.legal .kv li{grid-template-columns:1fr;gap:2px}}

/* ps-note-fix: Hinweis unter dem Höhen-Diagramm nicht überlappen */
.ps + .note{margin-top:96px!important;position:relative;z-index:2}
@media(max-width:700px){.ps + .note{margin-top:72px!important}}

.lead-form .lf-hint{font-size:12px;letter-spacing:.02em;color:rgba(255,255,255,.55);margin:-6px 0 4px}
