/* Homepage launch funnel (ported from the Shopify "Everlore funnel" + "Everlore polish" sections) */
.evf { --n:#151515; --n2:#0E0E0E; --ox:#8B9094; --li:#B9C3A2; --mo:#ECEAE5; --mu:#C8C6C1; --ln:#2C2C2C;
  background:var(--n); color:var(--mo); font-family:'Manrope',sans-serif; font-weight:400; }
.evf * { box-sizing:border-box; }
.evf-wrap { width:100%; max-width:1240px; margin:0 auto; padding:0 48px; }
.evf-eyebrow { font-size:12px; letter-spacing:.22em; text-transform:uppercase; color:var(--mu); margin:0 0 20px; font-weight:600; }
.evf-eyebrow--lichen { color:var(--li); }
.evf-center { text-align:center; }
.evf-display { font-family:'Italiana',serif; font-weight:400; font-size:clamp(44px,6.4vw,92px); line-height:1.02; letter-spacing:.01em; margin:0 0 24px; color:var(--mo); }
.evf-display--sm { font-size:clamp(38px,5vw,68px); }
.evf-h2 { font-family:'Italiana',serif; font-weight:400; font-size:clamp(34px,3.6vw,52px); line-height:1.08; margin:0 0 24px; color:var(--mo); }
.evf-lede { font-size:17px; line-height:1.7; color:#E0DED9; max-width:500px; margin:0 0 36px; font-weight:300; }
.evf p { line-height:1.75; }
.evf-fine { font-size:13px; color:var(--mu); letter-spacing:.04em; margin:22px 0 0; }
.evf-mt { margin-top:40px; }
.evf-ctas { display:flex; flex-wrap:wrap; gap:14px; }
.evf-btn { display:inline-block; padding:17px 34px; font-size:12px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; text-decoration:none; border:1px solid var(--mo); transition:background .3s, color .3s; }
.evf-btn--solid { background:var(--mo); color:var(--n); }
.evf-btn--solid:hover { background:transparent; color:var(--mo); }
.evf-btn--line { color:var(--mo); background:transparent; }
.evf-btn--line:hover { background:var(--mo); color:var(--n); }
.evf-link { color:var(--mo); text-decoration:none; font-size:13px; letter-spacing:.16em; text-transform:uppercase; border-bottom:1px solid var(--ox); padding-bottom:4px; }
.evf-link:hover { border-color:var(--li); color:var(--li); }

.evf-hero, .evf-final { position:relative; min-height:92svh; display:flex; align-items:flex-end; overflow:hidden; }
.evf-hero__img, .evf-final__img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(.45) contrast(1.05); }
.evf-hero__shade { position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,10,10,.82) 0%, rgba(10,10,10,.55) 45%, rgba(10,10,10,.25) 100%), linear-gradient(0deg, rgba(10,10,10,.7), rgba(10,10,10,0) 50%); }
.evf-hero__inner, .evf-final__inner { position:relative; padding-top:140px; padding-bottom:96px; }
.evf-final { min-height:80svh; align-items:center; }

.evf-count { border-bottom:1px solid var(--ln); background:var(--n2); }
.evf-count__inner { display:flex; align-items:center; justify-content:space-between; gap:32px; padding-top:34px; padding-bottom:34px; flex-wrap:wrap; }
.evf-count__label { margin:0; font-size:12px; letter-spacing:.22em; text-transform:uppercase; color:var(--mu); }
.evf-count__clock { display:flex; gap:40px; }
.evf-count__clock div { display:flex; align-items:baseline; gap:10px; }
.evf-count__clock span { font-family:'Manrope',sans-serif; font-weight:300; font-size:40px; line-height:1; letter-spacing:.02em; }
.evf-count__clock small { font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--ox); }

.evf-strip { border-bottom:1px solid var(--ln); }
.evf-strip__inner { display:flex; justify-content:center; align-items:center; gap:28px; flex-wrap:wrap; padding-top:22px; padding-bottom:22px; font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--mu); }
.evf-strip__inner i { width:5px; height:5px; background:#8B9094; transform:rotate(45deg); display:inline-block; }

.evf-ring { padding:140px 0; }
.evf-ring__grid { display:grid; grid-template-columns:1.1fr 1fr; gap:88px; align-items:center; }
.evf-gallery { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.evf-gallery figure { margin:0; overflow:hidden; aspect-ratio:4/5; background:#222; }
.evf-gallery__main { grid-column:1 / -1; aspect-ratio:5/4 !important; }
.evf-gallery img { width:100%; height:100%; object-fit:cover; transition:transform 1.2s ease; }
.evf-gallery__main img { object-position:center 70%; }
.evf-gallery figure:hover img { transform:scale(1.04); }
.evf-ring__copy p { color:var(--mu); font-size:16px; margin:0 0 18px; font-weight:300; }
.evf-specs { margin:36px 0; border-top:1px solid var(--ln); }
.evf-specs div { display:grid; grid-template-columns:110px 1fr; gap:16px; padding:15px 0; border-bottom:1px solid var(--ln); font-size:14px; }
.evf-specs dt { color:var(--ox); letter-spacing:.16em; text-transform:uppercase; font-size:11px; padding-top:3px; }
.evf-specs dd { margin:0; color:var(--mo); }
.evf-price { display:flex; gap:44px; margin:0 0 32px; }
.evf-price div { display:flex; flex-direction:column; gap:6px; }
.evf-price__now { font-family:'Italiana',serif; font-size:44px; line-height:1; }
.evf-price__was { font-family:'Italiana',serif; font-size:44px; line-height:1; color:var(--ox); text-decoration:line-through; text-decoration-thickness:1px; }
.evf-price__note { font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--mu); }

.evf-story { padding:140px 0; background:var(--n2); border-top:1px solid var(--ln); border-bottom:1px solid var(--ln); }
.evf-story__grid { display:grid; grid-template-columns:1fr 1fr; gap:88px; align-items:center; }
.evf-story__copy p { color:var(--mu); font-size:16px; font-weight:300; }
.evf-quote { font-family:'Italiana',serif; font-size:28px; line-height:1.35; margin:36px 0; padding-left:26px; border-left:1px solid var(--li); color:var(--mo); }
.evf-story__img { margin:0; }
.evf-story__img img { width:100%; aspect-ratio:4/5; object-fit:cover; filter:grayscale(.3); }
.evf-story__img figcaption { margin-top:12px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--ox); }

.evf-steps { padding:140px 0; }
.evf-steps__list { list-style:none; margin:64px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--ln); border:1px solid var(--ln); }
.evf-steps__list li { background:var(--n); padding:48px 40px; }
.evf-steps__list span { font-family:'Italiana',serif; font-size:30px; color:var(--li); }
.evf-steps__list h3 { font-family:'Italiana',serif; font-weight:400; font-size:28px; margin:20px 0 12px; color:var(--mo); }
.evf-steps__list p { margin:0; color:var(--mu); font-size:15px; font-weight:300; }

.evf-faq { padding:0 0 140px; }
.evf-faq__inner { max-width:860px; }
.evf-faq details { border-bottom:1px solid var(--ln); }
.evf-faq details:first-of-type { border-top:1px solid var(--ln); }
.evf-faq summary { cursor:pointer; list-style:none; padding:26px 40px 26px 0; position:relative; font-size:17px; color:var(--mo); }
.evf-faq summary::-webkit-details-marker { display:none; }
.evf-faq summary::after { content:'+'; position:absolute; right:0; top:22px; font-size:24px; font-weight:300; color:var(--ox); }
.evf-faq details[open] summary::after { content:'\2013'; }
.evf-faq details p { margin:0 0 26px; color:var(--mu); font-weight:300; max-width:680px; }

.evf-form { display:flex; max-width:460px; margin-top:16px; border-bottom:1px solid var(--mo); }
.evf-form input[type=email] { flex:1; background:transparent; border:0; color:var(--mo); padding:14px 0; font:inherit; font-size:15px; outline:none; }
.evf-form input::placeholder { color:var(--ox); }
.evf-form button { background:none; border:0; color:var(--mo); font:inherit; font-size:12px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; cursor:pointer; }
.evf-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

@media (max-width: 900px) {
  .evf-wrap { padding:0 20px; }
  .evf-ring, .evf-story, .evf-steps { padding:88px 0; }
  .evf-faq { padding-bottom:88px; }
  .evf-ring__grid, .evf-story__grid { grid-template-columns:1fr; gap:48px; }
  .evf-steps__list { grid-template-columns:1fr; }
  .evf-hero__inner, .evf-final__inner { padding-top:120px; padding-bottom:64px; }
  .evf-count__clock { gap:22px; }
  .evf-count__clock span { font-size:30px; }
  .evf-strip__inner { gap:14px; font-size:11px; }
  .evf-price { gap:28px; }
  .evf-btn { padding:16px 26px; }
}
