.ay{--ivory:#FAF6EF;--ink:#2A211B;--muted:#5C5048;--gold:#C9A24A;--gold-l:#E8C878;--maroon:#5A1420;--night:#140A0C;font-family:'Jost',system-ui,sans-serif;color:var(--ink);background:var(--ivory);overflow:hidden}
.ay *,.ay *::before,.ay *::after{box-sizing:border-box}
:where(.ay) a{color:inherit;text-decoration:none}
.ay-serif{font-family:'Cormorant Garamond',Georgia,serif}
.ay-eyebrow{margin:0;font-size:12px;letter-spacing:.45em;text-transform:uppercase;color:var(--gold)}
.ay-h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(40px,5.5vw,72px);line-height:1.05;margin:.25em 0 .3em}
.ay-wrap{max-width:1320px;margin:0 auto;padding:0 24px}
.ay-sec{padding:clamp(80px,11vw,150px) 0}
[data-reveal]{opacity:0;transform:translateY(48px);transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
[data-reveal].is-in{opacity:1;transform:none}
.ay-hero{position:relative;min-height:94vh;display:grid;place-items:center;text-align:center;background:radial-gradient(ellipse at 50% 40%,#3A1418 0%,var(--night) 70%);color:#F5E6C4;overflow:hidden}
.ay-hero__media{position:absolute;inset:-10% 0 0;will-change:transform}
.ay-hero__media img{width:100%;height:100%;object-fit:cover;opacity:.5;animation:ayKen 26s ease-in-out infinite alternate}
.ay-hero canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.ay-hero__inner{position:relative;z-index:2;padding:140px 24px 120px;max-width:1000px}
.ay-hero .ay-eyebrow{color:var(--gold-l);opacity:0;animation:ayFade 1.2s .2s ease forwards}
.ay-hero__title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(60px,12vw,176px);line-height:1;letter-spacing:.14em;margin:.18em 0 .22em;padding-left:.14em;background:linear-gradient(100deg,#9C7428 15%,#FFF1C9 35%,#D4AE55 50%,#FFF6DD 62%,#8A6420 85%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ayTrack 2s cubic-bezier(.2,.7,.2,1) both,ayShimmer 7s linear 2s infinite}
.ay-hero__sub{margin:0 auto;max-width:560px;font-size:clamp(16px,1.6vw,19px);line-height:1.7;color:#E9D9B6;opacity:0;animation:ayUp 1.2s .9s cubic-bezier(.2,.7,.2,1) forwards}
.ay-hero__ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:44px;opacity:0;animation:ayUp 1.2s 1.2s cubic-bezier(.2,.7,.2,1) forwards}
.ay-btn{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 34px;border:1px solid var(--gold);color:var(--gold-l);font-size:13px;letter-spacing:.28em;text-transform:uppercase;overflow:hidden;isolation:isolate;transition:color .5s}
.ay-btn::before{content:'';position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .6s cubic-bezier(.7,0,.2,1);z-index:-1}
.ay-btn:hover{color:var(--night)}
.ay-btn:hover::before{transform:scaleX(1);transform-origin:left}
.ay-btn--solid{background:var(--gold);color:var(--night)}
.ay-btn--solid::before{background:#F5E6C4}
.ay-btn--ink{border-color:var(--ink);color:var(--ink)}
.ay-btn--ink::before{background:var(--ink)}
.ay-btn--ink:hover{color:var(--ivory)}
.ay-scroll{position:absolute;left:50%;bottom:28px;z-index:2;width:1px;height:64px;background:rgba(232,200,120,.25);overflow:hidden}
.ay-scroll::after{content:'';position:absolute;left:0;top:-40%;width:1px;height:40%;background:var(--gold-l);animation:ayDrop 2.2s ease-in-out infinite}
.ay-marquee{background:var(--maroon);color:var(--gold-l);padding:20px 0;overflow:hidden;border-block:1px solid rgba(201,162,74,.4)}
.ay-marquee__track{display:flex;width:max-content;animation:ayMarquee 45s linear infinite}
.ay-marquee__track span{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:clamp(20px,2.2vw,28px);white-space:nowrap;padding:0 34px;display:inline-flex;align-items:center;gap:34px}
.ay-marquee__track span::after{content:'\2726';font-style:normal;font-size:14px;color:var(--gold)}
.ay-marquee:hover .ay-marquee__track{animation-play-state:paused}
.ay-cols__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:56px}
.ay-cols__head p{max-width:420px;color:var(--muted);line-height:1.7;margin:0}
.ay-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media (max-width:1100px){.ay-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.ay-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
.ay-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;aspect-ratio:3/4;padding:28px 18px;background:var(--bg);color:var(--fg);text-align:center;overflow:hidden;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s;transform-style:preserve-3d}
.ay-card:hover{box-shadow:0 30px 60px -25px rgba(42,33,27,.45)}
.ay-card__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),opacity .6s}
.ay-card:hover .ay-card__img{transform:scale(1.08);opacity:.4}
.ay-card__frame{position:absolute;inset:12px;border:1px solid var(--ac);opacity:.55;transition:inset .6s cubic-bezier(.2,.7,.2,1),opacity .6s;pointer-events:none}
.ay-card:hover .ay-card__frame{inset:20px;opacity:1}
.ay-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,244,214,.45),transparent 45%);opacity:0;transition:opacity .4s;pointer-events:none;mix-blend-mode:soft-light}
.ay-card:hover::after{opacity:1}
.ay-card::before{content:'';position:absolute;top:-50%;left:-80%;width:50%;height:200%;background:linear-gradient(90deg,transparent,rgba(255,250,235,.35),transparent);transform:rotate(18deg);transition:left 1.1s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.ay-card:hover::before{left:130%}
.ay-card__mark{position:relative;width:46%;max-width:110px;color:var(--ac);transform:translateZ(40px);transition:transform .6s}
.ay-card:hover .ay-card__mark{transform:translateZ(40px) scale(1.08) rotate(-4deg)}
.ay-card__mark :is(path,circle,ellipse,polygon){stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.2s cubic-bezier(.5,0,.2,1) .3s}
.ay-card.is-in .ay-card__mark :is(path,circle,ellipse,polygon){stroke-dashoffset:0}
.ay-card__mark .ay-dot{opacity:0;transition:opacity .8s 1.8s}
.ay-card.is-in .ay-card__mark .ay-dot{opacity:1}
.ay-card__name{position:relative;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(22px,2.2vw,30px);letter-spacing:.16em;text-transform:uppercase;transform:translateZ(30px)}
.ay-card__tag{position:relative;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:16px;line-height:1.35;opacity:.9}
.ay-card__cta{position:relative;margin-top:6px;font-size:11px;letter-spacing:.32em;text-transform:uppercase;display:inline-flex;gap:8px;align-items:center}
.ay-card__cta i{font-style:normal;transition:transform .4s}
.ay-card:hover .ay-card__cta i{transform:translateX(6px)}
.ay-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:center}
@media (max-width:860px){.ay-story{grid-template-columns:minmax(0,1fr)}}
.ay-story__art{position:relative;aspect-ratio:1;max-width:520px;width:100%;margin:0 auto;display:grid;place-items:center}
.ay-story__art svg{position:absolute;inset:0;width:100%;height:100%}
.ay-spin{animation:aySpin 60s linear infinite;transform-origin:50% 50%}
.ay-spin--rev{animation:aySpin 90s linear infinite reverse;transform-origin:50% 50%}
.ay-story__art .ay-story__word{position:relative;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:clamp(28px,3vw,40px);color:var(--maroon);text-align:center;line-height:1.2}
.ay-story__text p{color:var(--muted);font-size:17px;line-height:1.8;margin:0 0 18px}
.ay-story__text .ay-btn{margin-top:18px}
.ay-steps{background:var(--night);color:#F5E6C4}
.ay-steps .ay-h2{color:#F5E6C4}
.ay-steps__list{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;position:relative}
.ay-steps__list::before{content:'';position:absolute;top:34px;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--gold),rgba(201,162,74,.15));transform:scaleX(0);transform-origin:left;transition:transform 2.4s cubic-bezier(.5,0,.2,1)}
.ay-steps__list.is-in::before{transform:scaleX(1)}
@media (max-width:860px){.ay-steps__list{grid-template-columns:repeat(2,minmax(0,1fr))}.ay-steps__list::before{display:none}}
@media (max-width:520px){.ay-steps__list{grid-template-columns:minmax(0,1fr)}}
.ay-step__num{position:relative;display:grid;place-items:center;width:68px;height:68px;border:1px solid var(--gold);border-radius:50%;background:var(--night);font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;color:var(--gold-l);margin-bottom:22px}
.ay-step h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:26px;margin:0 0 10px;color:#F5E6C4}
.ay-step p{margin:0;line-height:1.7;color:#CDBB98;font-size:15px}
.ay-prods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
@media (max-width:900px){.ay-prods{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
.ay-prod__media{position:relative;aspect-ratio:4/5;overflow:hidden;background:#F1E6D5}
.ay-prod__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),opacity .7s}
.ay-prod__media img+img{opacity:0}
.ay-prod:hover .ay-prod__media img{transform:scale(1.06)}
.ay-prod:hover .ay-prod__media img+img{opacity:1}
.ay-prod__title{margin:14px 0 4px;font-family:'Cormorant Garamond',Georgia,serif;font-size:22px}
.ay-prod__price{color:var(--muted);font-size:14px;letter-spacing:.06em}
.ay-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #E6D9C3;border-bottom:1px solid #E6D9C3}
@media (max-width:800px){.ay-trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ay-trust div{padding:36px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}
.ay-trust div+div{border-left:1px solid #E6D9C3}
.ay-trust svg{width:34px;height:34px;color:var(--gold);transition:transform .6s}
.ay-trust div:hover svg{transform:rotate(-12deg) scale(1.15)}
.ay-cta{position:relative;background:var(--maroon);color:#F5E6C4;text-align:center;overflow:hidden}
.ay-cta .ay-h2{color:#F5E6C4}
.ay-cta p{max-width:540px;margin:0 auto 36px;line-height:1.75;color:#E9D3B0}
.ay-cta__ring{position:absolute;width:640px;height:640px;left:50%;top:50%;margin:-320px 0 0 -320px;border:1px solid rgba(232,200,120,.18);border-radius:50%;animation:ayPulse 6s ease-in-out infinite;pointer-events:none}
.ay-cta__ring+.ay-cta__ring{animation-delay:3s}
@keyframes ayKen{from{transform:scale(1)}to{transform:scale(1.12) translate(-2%,-1%)}}
@keyframes ayTrack{from{letter-spacing:.7em;opacity:0;filter:blur(10px)}to{letter-spacing:.14em;opacity:1;filter:blur(0)}}
@keyframes ayShimmer{from{background-position:100% 0}to{background-position:-160% 0}}
@keyframes ayFade{to{opacity:1}}
@keyframes ayUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes ayDrop{0%{top:-40%}100%{top:110%}}
@keyframes ayMarquee{to{transform:translateX(-50%)}}
@keyframes aySpin{to{transform:rotate(360deg)}}
@keyframes ayPulse{0%,100%{transform:scale(.8);opacity:0}50%{transform:scale(1.25);opacity:1}}
@media (prefers-reduced-motion:reduce){.ay *,.ay *::before,.ay *::after{animation:none!important;transition:none!important}.ay [data-reveal]{opacity:1;transform:none}.ay-hero .ay-eyebrow,.ay-hero__sub,.ay-hero__ctas{opacity:1}.ay-card__mark :is(path,circle,ellipse,polygon){stroke-dashoffset:0}.ay-card__mark .ay-dot{opacity:1}.ay-steps__list::before{transform:none}}
