@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-display.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-display-italic.woff2') format('woff2');font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans.woff2') format('woff2');font-weight:100 1000;font-style:normal;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
img,video{max-width:100%}
.skip{position:absolute;left:-9999px;top:8px;background:#2F302E;color:#fff;padding:10px 16px;border-radius:8px;z-index:10}
.skip:focus{left:8px}
:focus-visible{outline:2px solid #9A5640;outline-offset:3px}
body{margin:0;background:#F7F3ED}
a{color:#9A5640}a:hover{color:#2F302E}
html{scroll-behavior:smooth}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.in1{animation:rise .9s cubic-bezier(.2,.7,.2,1) .1s both}
.in2{animation:rise .9s cubic-bezier(.2,.7,.2,1) .3s both}
.in3{animation:rise .9s cubic-bezier(.2,.7,.2,1) .5s both}
.in4{animation:rise 1.1s cubic-bezier(.2,.7,.2,1) .4s both}
.float1{animation:floaty 6s ease-in-out infinite}
.float2{animation:floaty 7s ease-in-out 1s infinite}
.float3{animation:floaty 5.5s ease-in-out .5s infinite}
.track{animation:marquee 28s linear infinite}
.line{transform-origin:left;animation:grow 1.2s cubic-bezier(.2,.7,.2,1) .6s both}
.card{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.card:hover{transform:translateY(-8px);box-shadow:0 22px 40px -18px rgba(90,52,38,.45)}
.card .ph{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover .ph{transform:scale(1.06)}
.pill{transition:background .3s,color .3s}
.cta{transition:transform .3s,background .3s}
.cta:hover{transform:translateY(-2px);background:#2F302E;color:#fff}
.navlink{text-decoration:none;color:#2F302E;position:relative}
.navlink:hover{color:#9A5640}
.step{transition:transform .4s}
.step:hover{transform:translateY(-6px)}
@supports (animation-timeline: view()){
.reveal{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
}
input[type=range].ba{-webkit-appearance:none;appearance:none;background:transparent}
input[type=range].ba::-webkit-slider-thumb{-webkit-appearance:none;width:48px;height:48px;border-radius:50%;background:#F7F3ED;border:2px solid #9A5640;cursor:ew-resize}
input[type=range].ba::-moz-range-thumb{width:44px;height:44px;border-radius:50%;background:#F7F3ED;border:2px solid #9A5640;cursor:ew-resize}
@media (prefers-reduced-motion: reduce){
.in1,.in2,.in3,.in4,.float1,.float2,.float3,.track,.line,.reveal{animation:none !important}
.card,.card .ph,.step,.cta{transition:none}
}
