/* Ivory & Vine — Landing Page Styles */
  <link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,400&family=Josefin+Sans:wght@300;400;500;600&family=Lora:ital,wght@0,400;0,500;1,400;1,500&family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap" rel="stylesheet">
  
:root {
  --ivory:#FBF9F5; --cream-dark:#F4F0EA; --gold:#C2A360; --gold-light:#D4BC7A;
  --gold-soft:rgba(194,163,96,.12); --gold-d:#A8895A;
  --vine:#8FA888; --dark:#3D3428; --text:#3D3428;
  --muted:#9B8E7A; --surface:#F4F0EA; --border:#E8E0D4;
  --font-h:'Playfair Display',Georgia,serif;
  --font-s:'Lora',Georgia,serif;
  --font-b:'Josefin Sans',sans-serif;
  --radius:12px; --radius-lg:20px; --radius-pill:50px;
  --shadow:0 4px 32px rgba(61,52,40,.06);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--text);font-family:var(--font-b);font-weight:300;line-height:1.7}
input,textarea,select,button{font-family:inherit}
button{cursor:pointer;border:none}
.screen{display:none;min-height:100vh}
.screen.active{display:block}
.logo{font-family:var(--font-h);font-size:22px;letter-spacing:4px;color:var(--dark);text-transform:uppercase;font-weight:400}
.logo span{color:var(--gold)}
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:#fff;padding:14px 36px;border-radius:var(--radius-pill);font-size:.65rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;transition:background .3s,transform .2s,box-shadow .3s}
.btn-primary:hover{background:var(--gold-light);transform:translateY(-1px);box-shadow:0 6px 24px rgba(194,163,96,.3)}
.btn-secondary{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--gold);padding:13px 32px;border-radius:var(--radius-pill);border:1px solid rgba(196,167,107,.5);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;transition:border-color .2s,color .2s,background .2s}
.btn-secondary:hover{border-color:var(--gold);color:#fff;background:rgba(196,167,107,.15)}

/* LANDING — V114 mobile-first premium homepage references */
#screen-landing{display:none;min-height:100vh;background:linear-gradient(180deg,#FBF9F5 0%,#F7F1E8 100%);color:var(--dark);overflow:hidden}
#screen-landing.active{display:block}
.iv-home{--home-ivory:#FBF9F5;--home-cream:#F4F0EA;--home-gold:#C2A360;--home-gold-dark:#A8895A;--home-gold-soft:rgba(194,163,96,.12);--home-taupe:#8F8374;--home-dark:#3D3428;--home-border:#E8E0D4;background:var(--home-ivory);min-height:100vh;position:relative}
.iv-home::before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 8%,rgba(194,163,96,.12),transparent 28%),radial-gradient(circle at 92% 22%,rgba(168,137,90,.10),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.55),transparent 46%);z-index:0}.iv-home>*{position:relative;z-index:1}
.iv-home-header{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px clamp(18px,5vw,56px);background:rgba(251,249,245,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(232,224,212,.85)}
.iv-home-logo{font-family:var(--font-h);font-weight:400;text-transform:uppercase;letter-spacing:.24em;color:var(--home-dark);font-size:clamp(17px,4.6vw,30px);line-height:1;text-decoration:none;white-space:nowrap}.iv-home-logo span{color:var(--home-gold);font-style:italic}
.iv-home-nav{display:none;align-items:center;gap:28px}.iv-home-nav a{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--home-dark);text-decoration:none;opacity:.78;transition:opacity .2s,color .2s}.iv-home-nav a:hover{opacity:1;color:var(--home-gold-dark)}
.iv-menu-btn{width:42px;height:42px;border:1px solid rgba(194,163,96,.28);border-radius:50%;background:rgba(255,255,255,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.iv-menu-btn span{display:block;width:18px;height:1px;background:var(--home-dark)}
.iv-home-cta-small{display:none;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:var(--home-gold);color:#fff;text-decoration:none;border:1px solid var(--home-gold);font-size:10px;letter-spacing:.13em;text-transform:uppercase;transition:all .2s}.iv-home-cta-small:hover{background:var(--home-gold-dark);border-color:var(--home-gold-dark);transform:translateY(-1px)}
.iv-home-hero{position:relative;display:block;padding:52px clamp(20px,6vw,72px) 54px;background:linear-gradient(180deg,#fffdf9 0%,#FBF7EF 54%,var(--home-ivory) 100%);border-bottom:1px solid rgba(232,224,212,.72);overflow:hidden}
.iv-home-hero::before{content:'';position:absolute;right:-90px;top:24px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(194,163,96,.16),rgba(194,163,96,.045) 52%,transparent 70%);pointer-events:none}
.iv-home-hero::after{content:'✦';position:absolute;left:clamp(22px,6vw,76px);bottom:16px;color:rgba(194,163,96,.16);font-family:var(--font-h);font-size:132px;line-height:1;pointer-events:none}
.iv-hero-copy{position:relative;z-index:1;padding:24px 0 12px;max-width:860px;margin:0 auto;text-align:left}.iv-eyebrow{font-family:var(--font-b);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--home-gold-dark);margin-bottom:18px}.iv-hero-copy h1{font-family:var(--font-h);font-weight:400;line-height:1.05;color:var(--home-dark);font-size:clamp(44px,12vw,86px);letter-spacing:-.03em;margin-bottom:18px}.iv-hero-copy h1 em{font-style:italic;color:var(--home-gold);font-weight:400}.iv-hero-copy p{font-size:clamp(15px,4vw,18px);line-height:1.75;color:var(--home-taupe);max-width:490px;margin-bottom:26px}
.iv-hero-actions{display:grid;grid-template-columns:1fr;gap:12px;max-width:440px}.iv-home-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:15px 22px;border-radius:999px;text-decoration:none;text-align:center;font-family:var(--font-b);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;transition:all .2s}.iv-home-btn.primary{background:var(--home-gold);color:white;box-shadow:0 14px 32px rgba(194,163,96,.18)}.iv-home-btn.primary:hover{background:var(--home-gold-dark);transform:translateY(-1px)}.iv-home-btn.secondary{background:rgba(255,255,255,.55);color:var(--home-dark);border:1px solid rgba(194,163,96,.38)}.iv-home-btn.secondary:hover{border-color:var(--home-gold);color:var(--home-gold-dark)}
.iv-hero-proof{display:grid;grid-template-columns:1fr;gap:10px;margin-top:26px;color:var(--home-taupe);font-size:13px}.iv-proof{display:flex;gap:10px;align-items:center}.iv-proof::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--home-gold);box-shadow:0 0 0 4px rgba(194,163,96,.12);flex:0 0 auto}
.iv-hero-ornament{position:absolute;right:clamp(14px,5vw,76px);top:18px;width:min(34vw,220px);height:min(44vw,290px);color:rgba(194,163,96,.34);pointer-events:none}.iv-hero-ornament svg{width:100%;height:100%}
.iv-section{padding:58px clamp(20px,6vw,72px);position:relative}.iv-section.alt{background:linear-gradient(180deg,#F8F4EE,#FBF9F5)}.iv-section-head{text-align:center;max-width:720px;margin:0 auto 34px}.iv-kicker{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--home-gold-dark);font-family:var(--font-b);margin-bottom:8px}.iv-section-head h2{font-family:var(--font-h);font-weight:400;color:var(--home-dark);font-size:clamp(30px,8vw,54px);line-height:1.12}.iv-section-head p{color:var(--home-taupe);font-size:15px;line-height:1.75;margin-top:12px}
.iv-reference-group{max-width:1120px;margin:0 auto 34px}.iv-reference-group:last-child{margin-bottom:0}.iv-reference-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px;padding:0 2px}.iv-reference-title h3{font-family:var(--font-h);font-weight:500;font-size:clamp(24px,6vw,36px);color:var(--home-dark);line-height:1.12}.iv-reference-title span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--home-gold-dark);white-space:nowrap}.iv-reference-note{font-size:13px;color:var(--home-taupe);line-height:1.6;max-width:680px;margin:-6px 0 18px}.iv-examples{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px clamp(20px,6vw,72px) 18px;margin:0 calc(clamp(20px,6vw,72px) * -1);-webkit-overflow-scrolling:touch}.iv-examples::-webkit-scrollbar{height:0}.iv-example-card{flex:0 0 78%;scroll-snap-align:center;border:1px solid var(--home-border);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(61,52,40,.07);overflow:hidden;text-decoration:none;color:var(--home-dark)}.iv-example-card img{width:100%;height:190px;object-fit:cover;display:block;filter:saturate(.88) brightness(1.04)}.iv-example-card div{padding:16px 16px 18px;text-align:center}.iv-example-card strong{display:block;font-family:var(--font-h);font-size:18px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.iv-example-card span{display:block;color:var(--home-taupe);font-size:12px;margin-top:4px}.iv-ref-tag{display:inline-flex!important;margin:0 0 8px!important;padding:4px 10px;border-radius:999px;border:1px solid rgba(194,163,96,.32);color:var(--home-gold-dark)!important;font-size:9px!important;letter-spacing:.16em!important;text-transform:uppercase;background:rgba(194,163,96,.07)}.iv-dots{display:flex;justify-content:center;gap:8px;margin-top:6px}.iv-dots i{width:7px;height:7px;border-radius:50%;background:rgba(194,163,96,.28)}.iv-dots i:first-child{background:var(--home-gold)}.iv-examples.single{max-width:560px;margin-left:auto;margin-right:auto;display:block}.iv-examples.single .iv-example-card{display:block;width:100%;flex-basis:auto}.iv-examples.single + .iv-dots i:not(:first-child){display:none}
.iv-benefits{display:grid;grid-template-columns:1fr;gap:10px;max-width:1060px;margin:0 auto}.iv-benefit{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;padding:18px;border:1px solid var(--home-border);border-radius:18px;background:rgba(255,255,255,.55)}.iv-benefit-icon{width:42px;height:42px;border-radius:50%;border:1px solid rgba(194,163,96,.45);display:flex;align-items:center;justify-content:center;color:var(--home-gold-dark);font-size:19px}.iv-benefit h3{font-family:var(--font-h);font-size:20px;font-weight:500;line-height:1.2;color:var(--home-dark);margin-bottom:3px}.iv-benefit p{font-size:13px;color:var(--home-taupe);line-height:1.55}
.iv-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:880px;margin:32px auto 0}.iv-trust-item{text-align:center;padding:18px 8px;border-top:1px solid var(--home-border);border-bottom:1px solid var(--home-border);color:var(--home-taupe);font-size:12px}.iv-trust-item strong{display:block;color:var(--home-gold-dark);font-family:var(--font-h);font-size:24px;font-weight:500;line-height:1.1;margin-bottom:4px}
.iv-steps{display:grid;grid-template-columns:1fr;gap:14px;max-width:950px;margin:0 auto}.iv-step{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start;padding:20px;border:1px solid var(--home-border);border-radius:18px;background:#fff}.iv-step-num{width:48px;height:48px;border-radius:50%;border:1px solid var(--home-gold);color:var(--home-gold-dark);font-family:var(--font-h);font-size:22px;display:flex;align-items:center;justify-content:center}.iv-step h3{font-family:var(--font-h);font-size:22px;font-weight:500;color:var(--home-dark);margin-bottom:3px}.iv-step p{font-size:13px;color:var(--home-taupe);line-height:1.6}
.iv-pricing{display:grid;grid-template-columns:1fr;gap:14px;max-width:980px;margin:0 auto}.iv-price{position:relative;border:1px solid var(--home-border);background:#fff;border-radius:18px;padding:24px 22px;box-shadow:0 12px 28px rgba(61,52,40,.045);overflow:hidden}.iv-price.featured{border-color:rgba(194,163,96,.65);box-shadow:0 18px 42px rgba(194,163,96,.13)}.iv-price-badge{position:absolute;right:16px;top:16px;border:1px solid rgba(194,163,96,.35);border-radius:999px;color:var(--home-gold-dark);padding:5px 10px;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.iv-price h3{font-family:var(--font-h);font-weight:500;font-size:24px;letter-spacing:.08em;text-transform:uppercase;color:var(--home-dark);margin-bottom:8px}.iv-price .price{font-family:var(--font-h);font-size:42px;color:var(--home-dark);line-height:1.1;margin:8px 0}.iv-price p{color:var(--home-taupe);font-size:13px;margin-bottom:16px;max-width:310px}.iv-price ul{display:grid;gap:7px;list-style:none;color:var(--home-dark);font-size:13px}.iv-price li::before{content:'✓';color:var(--home-gold-dark);margin-right:8px}.iv-price button{margin-top:20px;width:100%}
.iv-planner{display:grid;grid-template-columns:1fr;gap:22px;align-items:center;max-width:1050px;margin:0 auto;border:1px solid var(--home-border);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 14px 34px rgba(61,52,40,.055)}.iv-planner img{width:100%;height:250px;object-fit:cover;filter:saturate(.9) brightness(1.04)}.iv-planner-copy{padding:26px}.iv-planner-copy h2{font-family:var(--font-h);font-size:clamp(28px,7vw,44px);font-weight:400;line-height:1.14;margin-bottom:10px}.iv-planner-copy p{color:var(--home-taupe);font-size:14px;line-height:1.75;margin-bottom:18px}.iv-planner-list{display:grid;gap:10px;color:var(--home-dark);font-size:13px;margin-bottom:20px}.iv-planner-list span::before{content:'✦';color:var(--home-gold);margin-right:8px}
.iv-quote{max-width:980px;margin:0 auto;display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;border:1px solid var(--home-border);border-radius:22px;background:rgba(255,255,255,.68);padding:22px}.iv-quote img{width:72px;height:72px;border-radius:50%;object-fit:cover}.iv-quote blockquote{font-family:var(--font-s);font-style:italic;color:var(--home-dark);font-size:clamp(17px,4vw,24px);line-height:1.5}.iv-quote cite{display:block;margin-top:8px;color:var(--home-gold-dark);font-style:normal;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.iv-final{padding:64px clamp(20px,6vw,72px) 88px;background:linear-gradient(135deg,#B99856,#C8AA66);color:white;text-align:center;position:relative;overflow:hidden}.iv-final::before,.iv-final::after{content:'✦';position:absolute;color:rgba(255,255,255,.22);font-family:var(--font-h);font-size:190px;line-height:1}.iv-final::before{left:-18px;top:-38px}.iv-final::after{right:-24px;bottom:-70px}.iv-final h2{font-family:var(--font-h);font-size:clamp(32px,8vw,58px);font-weight:400;line-height:1.12;margin-bottom:12px;position:relative}.iv-final p{position:relative;max-width:620px;margin:0 auto 28px;color:rgba(255,255,255,.83);font-size:15px}.iv-final .iv-home-btn{position:relative;background:#fff;color:var(--home-gold-dark);box-shadow:none}.iv-home-footer{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:26px;color:rgba(255,255,255,.78);font-size:12px;position:relative}.iv-home-footer span::before{content:'○';margin-right:6px}
.iv-sticky-mobile{display:none!important}
@media (min-width:680px){.iv-home-cta-small{display:inline-flex}.iv-menu-btn{display:none}.iv-home-hero{padding-top:78px;padding-bottom:72px}.iv-hero-actions{grid-template-columns:auto auto;max-width:none}.iv-hero-proof{grid-template-columns:repeat(3,auto);gap:24px}.iv-examples{padding-left:clamp(28px,6vw,72px);padding-right:clamp(28px,6vw,72px)}.iv-example-card{flex-basis:42%}.iv-benefits{grid-template-columns:repeat(2,1fr)}.iv-steps{grid-template-columns:repeat(3,1fr)}.iv-step{display:block;text-align:center}.iv-step-num{margin:0 auto 14px}.iv-pricing{grid-template-columns:repeat(3,1fr)}.iv-price button{width:auto}.iv-planner{grid-template-columns:.9fr 1.1fr}.iv-planner img{height:100%;min-height:340px}}
@media (min-width:1000px){.iv-home-nav{display:flex}.iv-home-hero{min-height:560px;display:flex;align-items:center}.iv-hero-copy{margin:0;padding-left:clamp(54px,7vw,110px);padding-right:32px;max-width:900px}.iv-hero-copy h1{font-size:clamp(66px,7vw,108px)}.iv-reference-title{align-items:center}.iv-examples{overflow:visible;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(3,1fr);max-width:1080px}.iv-example-card{flex:auto}.iv-benefits{grid-template-columns:repeat(4,1fr)}.iv-quote{grid-template-columns:92px 1fr;padding:30px}.iv-quote img{width:92px;height:92px}}
