[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
[data-reveal].is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.hp-hero__photo-swap{animation:none;opacity:0;}[data-reveal]{opacity:1;transform:none;transition:none;}.hp-hero__photo{animation:none;opacity:1;transform:translateY(var(--y,0px));}.hp-hero__photo img{transition:none;}.hp-hero__photo:hover img{transform:none;}.hp-hero__panel{animation:none;opacity:1;transform:none;}.hp-hero__panel-card,.hp-hero__panel-check,.hp-hero__panel-ripple,.hp-hero__panel-btn,.hp-hero__panel-cursor{animation:none;}.hp-hero__panel-row--a{border-color:#B08D57;background:#FBF8F2;}.hp-hero__panel-row--b{border-color:#E6E2D9;background:#fff;}.hp-hero__panel-check--a{opacity:1;transform:scale(1);}.hp-hero__panel-check--b,.hp-hero__panel-ripple,.hp-hero__panel-cursor{opacity:0;}.hp-hero__panel-btn{background:transparent;color:#23231F;}}
.hp-hero{padding:3rem 0 6rem;text-align:center;}
.hp-hero__intro{max-width:60rem;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.5rem;}
.hp-hero__intro h1{font-size:clamp(2.75rem,7vw,5.5rem);line-height:1.02;letter-spacing:-0.025em;text-wrap:balance;}
.hp-hero__intro h1 em{font-style:italic;color:var(--text-accent);}
.hp-hero__intro p{max-width:34rem;margin:0;font-size:1.1875rem;line-height:1.6;color:var(--text-secondary);text-wrap:pretty;}
.hp-hero__cta{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem;}
.hp-hero__visual{max-width:1080px;margin:4.5rem auto 0;position:relative;text-align:left;}
.hp-hero__stack{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start;}
.hp-hero__photo{position:relative;aspect-ratio:3/4.6;border-radius:20px;overflow:hidden;background:var(--ivory-300);box-shadow:var(--shadow-lg);opacity:0;animation:hp-photo-pop 1.1s cubic-bezier(.16,1,.3,1) forwards;}
.hp-hero__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s cubic-bezier(.16,1,.3,1);}
.hp-hero__photo:hover img{transform:scale(1.06);}
.hp-hero__photo:nth-child(1){--y:0rem;animation-delay:.2s;}
.hp-hero__photo:nth-child(2){--y:3rem;background:var(--navy-800);box-shadow:var(--shadow-xl);animation-delay:1.8s;}
.hp-hero__photo:nth-child(3){--y:6rem;animation-delay:3.4s;}
@keyframes hp-photo-pop{from{opacity:0;transform:translateY(calc(var(--y,0px) + 22px)) scale(.95);}to{opacity:1;transform:translateY(var(--y,0px)) scale(1);}}
.hp-hero__photo-swap{position:absolute;inset:0;opacity:0;animation:hp-hero-swap 14s ease-in-out infinite;}
.hp-hero__photo:nth-child(3) .hp-hero__photo-swap{animation-delay:2s;}
@keyframes hp-hero-swap{0%,33%{opacity:0;}36%,92%{opacity:1;}100%{opacity:0;}}
.hp-hero__panel{position:absolute;z-index:3;width:250px;opacity:0;animation:hp-panel-fade .9s cubic-bezier(.16,1,.3,1) forwards;}
.hp-hero__panel--1{left:22%;top:44%;animation-delay:1.1s;}
.hp-hero__panel--2{left:55%;top:66%;width:268px;animation-delay:2.7s;}
@keyframes hp-panel-fade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.hp-hero__panel-card{position:relative;box-sizing:border-box;background:#fff;border-radius:16px;box-shadow:0 16px 38px rgba(35,35,31,.18);padding:14px;display:flex;flex-direction:column;gap:10px;animation:hp-panel-bob 7s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-card{animation-delay:2s;}
@keyframes hp-panel-bob{0%,4%{transform:translateY(7px);}12%,92%{transform:translateY(0);}100%{transform:translateY(7px);}}
.hp-hero__panel-rows{display:flex;flex-direction:column;gap:7px;}
.hp-hero__panel-row{display:flex;align-items:center;gap:10px;border:1.5px solid #E6E2D9;border-radius:10px;padding:8px 10px;}
.hp-hero__panel-row--a{animation:hp-panel-row-was 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-row--a{animation-delay:2s;}
.hp-hero__panel-row--b{position:relative;animation:hp-panel-row-becomes 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-row--b{animation-delay:2s;}
@keyframes hp-panel-row-was{0%,21%{border-color:#B08D57;background:#FBF8F2;}22%,92%{border-color:#E6E2D9;background:#fff;}100%{border-color:#B08D57;background:#FBF8F2;}}
@keyframes hp-panel-row-becomes{0%,21%{border-color:#E6E2D9;background:#fff;}22%,92%{border-color:#B08D57;background:#FBF8F2;}100%{border-color:#E6E2D9;background:#fff;}}
.hp-hero__panel-swatch{width:24px;height:24px;border-radius:6px;flex:none;}
.hp-hero__panel-swatch--navy{background:#1E2A44;}
.hp-hero__panel-swatch--grey{background:#55585C;}
.hp-hero__panel-swatch--beige-stripe{background:repeating-linear-gradient(90deg,#E9E3D6 0 4px,#D3C9B4 4px 5px);}
.hp-hero__panel-swatch--brown{background:#6E5A47;}
.hp-hero__panel-label{flex:1;font-size:14px;font-weight:500;color:#23231F;}
.hp-hero__panel-check{color:#B08D57;font-size:13px;font-weight:700;}
.hp-hero__panel-check--a{animation:hp-panel-mark-first 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-check--a{animation-delay:2s;}
.hp-hero__panel-check--b{animation:hp-panel-mark-becomes 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-check--b{animation-delay:2s;}
@keyframes hp-panel-mark-first{0%,21%{opacity:1;transform:scale(1);}22%,92%{opacity:0;transform:scale(.5);}100%{opacity:1;transform:scale(1);}}
@keyframes hp-panel-mark-becomes{0%,21%{opacity:0;transform:scale(.5);}25%,92%{opacity:1;transform:scale(1);}100%{opacity:0;transform:scale(.5);}}
.hp-hero__panel-ripple{position:absolute;right:10px;width:28px;height:28px;border-radius:999px;background:#B08D57;animation:hp-panel-ripple 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-ripple{animation-delay:2s;}
@keyframes hp-panel-ripple{0%,20%{opacity:0;transform:scale(.4);}22%{opacity:.35;transform:scale(.7);}29%,100%{opacity:0;transform:scale(1.6);}}
.hp-hero__panel-footer{display:flex;justify-content:flex-end;}
.hp-hero__panel-btn{font-size:13px;font-weight:500;border:1.5px solid #B08D57;border-radius:999px;padding:7px 14px;color:#23231F;animation:hp-panel-btn-tap 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-btn{animation-delay:2s;}
@keyframes hp-panel-btn-tap{0%,32%{background:transparent;color:#23231F;}33%,40%{background:#FBF3E4;color:#8A6A31;}45%,100%{background:transparent;color:#23231F;}}
.hp-hero__panel-cursor{position:absolute;right:22px;top:66px;width:18px;height:18px;border-radius:999px;background:#23231F;box-shadow:0 0 0 5px rgba(35,35,31,.14);animation:hp-panel-cursor-tap 14s ease-in-out infinite;}
.hp-hero__panel--2 .hp-hero__panel-cursor{animation-delay:2s;}
@keyframes hp-panel-cursor-tap{0%,15%{opacity:0;transform:translate(16px,-10px) scale(.9);}20%{opacity:1;transform:translate(0,0) scale(1);}22%{transform:translate(0,0) scale(.86);}24%{transform:translate(0,0) scale(1);}31%{opacity:1;transform:translate(-4px,53px) scale(1);}33%{opacity:1;transform:translate(-4px,53px) scale(.86);}35%{opacity:1;transform:translate(-4px,53px) scale(1);}41%,100%{opacity:0;transform:translate(10px,59px) scale(.9);}}
@media(max-width:960px){.hp-hero__stack{grid-template-columns:1fr 1fr;}.hp-hero__stack .hp-hero__photo{transform:none !important;}.hp-hero__stack .hp-hero__photo:nth-child(3){display:none;}.hp-hero__panel{position:static;width:auto !important;margin-top:1rem;}}
@media(max-width:640px){.hp-hero{padding:3.5rem 0 3rem;}.hp-hero__panel--2{display:none;}.hp-hero__cta{flex-direction:column;align-items:stretch;}.hp-hero__cta .bv-btn{white-space:normal;text-align:center;font-size:.9375rem;padding:12px 18px;}}
.hp-passessie{padding:2rem 0 6rem;}
.hp-passessie__grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center;}
.hp-passessie__text{display:flex;flex-direction:column;gap:1.25rem;}
.hp-passessie__title{font-size:clamp(2.5rem,5.6vw,4.25rem);line-height:1.05;letter-spacing:-0.02em;text-wrap:balance;}
.hp-passessie__title em{font-style:italic;color:var(--text-accent);}
.hp-passessie__text p{margin:0;font-size:1.0625rem;line-height:1.65;color:var(--text-secondary);text-wrap:pretty;}
.hp-passessie__hint{display:flex;align-items:center;gap:12px;font-size:.875rem;color:var(--text-muted);}
.hp-passessie__hint .line{width:34px;height:1px;background:var(--border-default);}
.hp-compare{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-xl);background:var(--navy-800);aspect-ratio:1086/1449;cursor:ew-resize;touch-action:none;user-select:none;}
.hp-compare > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;user-drag:none;}
.hp-compare__before{position:absolute;inset:0;clip-path:inset(0 50% 0 0);}
.hp-compare__before img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;user-drag:none;}
.hp-compare__divider{position:absolute;top:0;bottom:0;left:50%;width:2px;background:rgba(250,248,242,.9);transform:translateX(-1px);pointer-events:none;}
.hp-compare__handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:var(--ivory-100);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;color:var(--text-primary);font-family:var(--font-mono);font-size:13px;letter-spacing:-.05em;}
.hp-compare__tag{position:absolute;bottom:16px;padding:5px 12px;border-radius:999px;font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;}
.hp-compare__tag--photo{left:16px;background:rgba(8,13,24,.62);backdrop-filter:blur(6px);color:var(--ivory-100);}
.hp-compare__tag--config{right:16px;background:rgba(194,163,107,.9);color:var(--navy-900);}
.hp-passessie__steps{list-style:none;margin:.75rem 0 0;padding:0;counter-reset:passessie-step;}
.hp-passessie__steps li{counter-increment:passessie-step;display:flex;align-items:flex-start;gap:1.375rem;padding:1.5rem 0;}
.hp-passessie__steps li:not(:last-child){border-bottom:1px dashed var(--border-default);}
.hp-passessie__steps li::before{content:counter(passessie-step,decimal-leading-zero);flex:0 0 auto;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--brass-500);color:var(--navy-900);font-family:var(--font-mono);font-weight:700;font-size:1.0625rem;border-radius:6px;}
.hp-passessie__steps h3{margin:0 0 .25rem;font-size:1.125rem;}
.hp-passessie__steps p{margin:0;font-size:.9375rem;line-height:1.6;color:var(--text-secondary);}
@media(max-width:1040px){.hp-passessie__grid{grid-template-columns:1fr;gap:2.5rem;}}
.hp-showcase{padding:7rem 0 0;background:var(--navy-900) url('/assets/backdrop.avif') center/cover no-repeat;color:var(--ivory-100);overflow:hidden;}
.hp-showcase__grid{display:grid;grid-template-columns:.8fr 1.32fr;gap:2.5rem;align-items:end;}
.hp-showcase__copy{padding-bottom:11.5rem;}
.hp-showcase__quote{font-family:var(--font-display);font-size:clamp(2.25rem,4.6vw,3.75rem);line-height:1.08;letter-spacing:-0.02em;margin:0 0 1.5rem;text-wrap:balance;}
.hp-showcase__quote em{font-style:italic;color:var(--brass-400);}
.hp-showcase__sub{margin:0;max-width:30rem;font-size:1.0625rem;line-height:1.65;color:var(--navy-200);text-wrap:pretty;}
.hp-showcase__cta{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem;}
.hp-showcase__mockup{display:flex;justify-content:center;align-self:end;}
.hp-showcase__mockup img{width:100%;height:auto;display:block;}
@media(max-width:1040px){.hp-showcase__grid{grid-template-columns:1fr;gap:2.5rem;}.hp-showcase__copy{padding-bottom:2.5rem;}.hp-showcase__mockup img{max-width:26rem;margin:0 auto;}}
.hp-testi{padding:7rem 0 6rem;}
.hp-testi h2{text-align:center;margin:0 0 3.5rem;font-size:clamp(2.25rem,4vw,3rem);}
.hp-testi__swiper{overflow:hidden;}
.hp-testi__swiper .swiper-wrapper{align-items:stretch;}
.hp-testi__swiper .swiper-slide{height:auto;display:flex;}
.hp-testi__card{background:var(--ivory-50);border:1px solid var(--border-subtle);border-radius:16px;padding:2rem;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);width:100%;}
.hp-testi__top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;}
.hp-testi__mark{font-family:var(--font-display);font-size:3.25rem;line-height:.7;color:var(--brass-500);}
.hp-testi__badge{font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-700);background:var(--bg-sunken);padding:6px 12px;border-radius:5px;}
.hp-testi__quote{margin:0;font-size:1rem;line-height:1.7;color:var(--text-secondary);flex:1;text-wrap:pretty;}
.hp-testi__foot{border-top:1px solid var(--border-subtle);padding-top:1.25rem;margin-top:1.5rem;}
.hp-testi__name{font-size:.9375rem;font-weight:700;color:var(--text-primary);}
.hp-testi__role{font-size:.875rem;color:var(--text-muted);}
.hp-testi__video{position:relative;border-radius:16px;overflow:hidden;background:var(--navy-800);min-height:420px;height:100%;width:100%;box-shadow:var(--shadow-lg);}
.hp-testi__video img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hp-testi__video::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,13,24,.15) 0%,rgba(8,13,24,.55) 100%);}
.hp-testi__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;border:0;padding:0;background:none;cursor:pointer;}
.hp-testi__play span{width:68px;height:68px;border-radius:50%;background:rgba(250,248,242,.94);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform var(--duration-fast,.15s) var(--ease-standard,ease);}
.hp-testi__play:hover span{transform:scale(1.06);}
.hp-testi__play svg{width:22px;height:22px;color:var(--navy-900);}
.hp-testi__video-cap{position:absolute;left:1.75rem;right:1.75rem;bottom:1.75rem;color:var(--ivory-100);pointer-events:none;}
.hp-testi__video-cap .k{font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-400);margin-bottom:.35rem;display:block;}
.hp-testi__video-cap .t{font-family:var(--font-display);font-size:1.5rem;line-height:1.2;}
.hp-testi__nav{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:2.5rem;}
.hp-testi__navbtn{width:48px;height:44px;border-radius:5px;border:1px solid var(--border-subtle);background:var(--bg-sunken);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.hp-testi__navbtn:hover{background:var(--ivory-300);}
.hp-testi__navbtn--next{background:var(--navy-900);color:var(--ivory-100);border-color:transparent;}
.hp-testi__navbtn--next:hover{background:var(--navy-800);}
.hp-testi__navbtn.swiper-button-disabled{opacity:.4;cursor:default;}
.hp-pricing{padding:0 0 4rem;}
.hp-pricing__head{max-width:38rem;margin:0 auto 3.5rem;text-align:center;}
.hp-pricing__head h2{font-size:clamp(2.25rem,4vw,3rem);text-wrap:balance;}
.hp-pricing__head p{margin:.75rem 0 0;font-size:1.0625rem;color:var(--text-secondary);}
.hp-billing{display:inline-flex;align-items:center;gap:4px;margin-top:1.75rem;padding:4px;border:1px solid var(--border-subtle);border-radius:999px;background:var(--ivory-50);}
.hp-billing__btn{display:inline-flex;align-items:center;gap:.5rem;padding:9px 18px;border:0;border-radius:999px;background:none;font:inherit;font-size:.9375rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background-color .2s ease,color .2s ease;}
.hp-billing__btn:hover{color:var(--text-primary);}
.hp-billing__btn.is-active{background:var(--navy-900);color:var(--ivory-100);}
.hp-billing__save{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--brass-500);color:var(--navy-900);white-space:nowrap;}
@media(max-width:480px){.hp-billing{display:flex;align-items:stretch;width:100%;max-width:22rem;margin-left:auto;margin-right:auto;border-radius:1.75rem;}.hp-billing__btn{flex:1;flex-direction:column;justify-content:center;gap:3px;padding:8px 10px;border-radius:1.5rem;}.hp-billing__save{font-size:.625rem;padding:2px 7px;}}
.hp-pricing__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem;max-width:56rem;margin:0 auto;align-items:stretch;}
.hp-pricing__card{background:var(--ivory-50);border:1px solid var(--border-subtle);border-radius:16px;padding:2.5rem;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);position:relative;}
.hp-pricing__card--featured{border-color:var(--brass-500);box-shadow:var(--shadow-md);}
.hp-pricing__badge{position:absolute;top:-13px;left:2.5rem;background:var(--brass-500);color:var(--navy-900);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;}
.hp-pricing__name{font-size:1.0625rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;}
.hp-pricing__price{display:flex;align-items:baseline;gap:.35rem;margin-bottom:1.5rem;}
.hp-pricing__price .amount{font-family:var(--font-display);font-size:2.75rem;color:var(--text-primary);}
.hp-pricing__price .period{font-size:.9375rem;color:var(--text-muted);}
.hp-pricing__save{margin:-1rem 0 1.5rem;font-size:.875rem;font-weight:600;color:var(--text-accent);}
.hp-pricing__list{list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:.85rem;flex:1;}
.hp-pricing__list li{display:flex;align-items:flex-start;gap:.65rem;font-size:.9375rem;line-height:1.5;color:var(--text-secondary);}
.hp-pricing__list svg,.hp-pricing__list i{flex-shrink:0;margin-top:2px;color:var(--text-accent);}
@media(max-width:760px){.hp-pricing__grid{grid-template-columns:1fr;}}
.hp-promo-fancybox .fancybox__content{padding:0;background:#000;width:min(540px,100%,calc((100dvh - 6rem) * 9 / 16)) !important;height:auto !important;aspect-ratio:9/16;}
.hp-demo-fancybox .fancybox__content{padding:0;background:#000;width:min(1280px,100%,calc((100dvh - 6rem) * 16 / 9)) !important;height:auto !important;aspect-ratio:16/9;}
