:root{--pub-wine:#681a29;--pub-wine-dark:#310914;--pub-cream:#f5f0e8;--pub-ink:#171316;--pub-muted:#756d72;--pub-line:rgba(49,9,20,.11);--pub-gold:#b89456}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfaf8;color:var(--pub-ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}.public-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);position:absolute;top:0;left:0;right:0;z-index:20;color:#fff}.public-brand{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:inherit;text-decoration:none;letter-spacing:-1px}.public-brand b{color:#d4b374}.public-nav{display:flex;gap:34px}.public-nav a,.public-login-link{color:inherit;text-decoration:none;font-size:14px;font-weight:600}.public-login-link{padding:10px 19px;border:1px solid rgba(255,255,255,.35);border-radius:99px}.public-hero{min-height:760px;background:radial-gradient(circle at 78% 15%,#8e3445 0,transparent 30%),linear-gradient(130deg,#250711 0%,#4c101e 55%,#260711 100%);color:#fff;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:7vw;padding:135px max(6vw,28px) 90px;position:relative;overflow:hidden}.public-hero:after{content:"";position:absolute;width:580px;height:580px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;bottom:-260px}.hero-glow{position:absolute;border-radius:50%;filter:blur(5px);opacity:.25}.hero-glow-one{width:300px;height:300px;background:#d5a05c;left:-180px;top:180px}.hero-glow-two{width:180px;height:180px;background:#fff;right:20%;bottom:-120px}.public-hero-copy{position:relative;z-index:2;max-width:720px}.eyebrow{display:inline-flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:700;color:var(--pub-gold)}.public-hero .eyebrow{color:#e1c18c}.public-hero h1{font:600 clamp(48px,6.1vw,88px)/.99 'Playfair Display',serif;letter-spacing:-.055em;margin:24px 0}.public-hero-copy>p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:rgba(255,255,255,.75);max-width:640px}.hero-actions{display:flex;gap:12px;margin:36px 0 28px;flex-wrap:wrap}.btn-public{min-height:52px;padding:0 23px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-weight:700;font-size:14px;border:0;cursor:pointer;transition:.22s}.btn-public:hover{transform:translateY(-2px)}.btn-primary{background:#fff;color:var(--pub-wine-dark);box-shadow:0 14px 35px rgba(0,0,0,.2)}.access-card .btn-primary{background:var(--pub-wine);color:#fff}.btn-secondary{border:1px solid rgba(255,255,255,.23);color:#fff;background:rgba(255,255,255,.06)}.btn-outline{border:1px solid var(--pub-line);color:var(--pub-wine);background:#fff}.btn-full{width:100%}.hero-trust{display:flex;gap:18px;flex-wrap:wrap;color:rgba(255,255,255,.62);font-size:12px}.hero-trust i{color:#d7b87e;margin-right:5px}.public-showcase{position:relative;z-index:2;max-width:540px;margin:auto;width:100%;perspective:1000px}.showcase-window{background:#f6f2ee;border:1px solid rgba(255,255,255,.17);border-radius:28px;padding:13px;box-shadow:0 50px 90px rgba(0,0,0,.36);transform:rotateY(-5deg) rotateX(2deg)}.showcase-top{height:43px;background:#fff;border-radius:17px 17px 8px 8px;display:flex;align-items:center;padding:0 14px;gap:6px;color:#5a1523}.showcase-top span{width:7px;height:7px;border-radius:50%;background:#d8d0ca}.showcase-top b{font:700 17px 'Playfair Display',serif;margin:auto}.showcase-card{background:#fff;border-radius:8px 8px 18px 18px;padding:14px}.showcase-user{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:#24171b}.showcase-avatar{width:38px;height:38px;border-radius:50%;background:#681a29;color:#fff;display:grid;place-items:center;font:700 17px 'Playfair Display'}.showcase-user strong,.showcase-user small{display:block}.showcase-user strong{font-size:12px}.showcase-user small{font-size:9px;color:#948b8f;margin-top:3px}.showcase-photo{aspect-ratio:4/4.6;border-radius:15px;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:25px;color:#fff}.showcase-photo span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#e5c894}.showcase-photo h3{font:600 28px/1.05 'Playfair Display';margin:8px 0 0;max-width:340px}.showcase-actions{display:flex;gap:19px;padding:15px 4px 2px;color:#3b2830;font-size:18px}.showcase-actions span:last-child{margin-left:auto}.floating-note{position:absolute;background:rgba(255,255,255,.94);color:#2e1820;box-shadow:0 20px 45px rgba(0,0,0,.24);backdrop-filter:blur(14px);border-radius:17px;padding:13px 16px;display:flex;align-items:center;gap:11px}.note-rating{top:19%;right:-42px}.note-rating b{font-size:22px;color:var(--pub-wine)}.note-rating span{font-size:10px;max-width:70px}.note-dna{left:-50px;bottom:14%}.note-dna i{font-size:24px;color:var(--pub-wine)}.note-dna span{font-size:11px}.public-metrics{background:#fff;display:grid;grid-template-columns:repeat(4,1fr);max-width:1180px;margin:-38px auto 0;position:relative;z-index:5;border:1px solid var(--pub-line);border-radius:20px;box-shadow:0 17px 55px rgba(55,23,31,.08);padding:24px}.public-metrics div{text-align:center;border-right:1px solid var(--pub-line)}.public-metrics div:last-child{border:0}.public-metrics strong{display:block;font:600 31px 'Playfair Display';color:var(--pub-wine)}.public-metrics span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--pub-muted)}.public-section{padding:120px max(6vw,25px)}.section-heading{text-align:center;max-width:760px;margin:0 auto 55px}.section-heading h2,.public-access h2{font:600 clamp(38px,4.8vw,64px)/1.05 'Playfair Display';letter-spacing:-.04em;margin:17px 0}.section-heading p,.public-access p{font-size:17px;line-height:1.7;color:var(--pub-muted)}.feature-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:17px;max-width:1180px;margin:auto}.feature-card{background:#fff;border:1px solid var(--pub-line);border-radius:24px;padding:29px;min-height:270px;position:relative;overflow:hidden}.feature-card span{color:var(--pub-gold);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.feature-card h3{font:600 26px/1.12 'Playfair Display';margin:18px 0 11px}.feature-card p{color:var(--pub-muted);font-size:14px;line-height:1.65}.feature-icon{width:47px;height:47px;background:#f7f0f1;color:var(--pub-wine);border-radius:14px;display:grid;place-items:center;margin-bottom:35px}.feature-large{grid-row:span 2;background:var(--pub-wine-dark);color:#fff}.feature-large p{color:rgba(255,255,255,.62)}.feature-large .feature-icon{background:rgba(255,255,255,.1);color:#e5c58e}.taste-bars{height:150px;display:flex;align-items:end;gap:12px;margin-top:35px}.taste-bars i{display:block;width:20%;height:var(--v);background:linear-gradient(#c29a59,#713043);border-radius:9px 9px 4px 4px}.feature-wide{grid-column:span 2;display:grid;grid-template-columns:1.2fr .8fr;align-items:center}.dna-orbit{width:160px;height:160px;border:1px solid rgba(104,26,41,.16);border-radius:50%;display:grid;place-items:center;margin:auto;position:relative;color:var(--pub-wine);text-align:center;font:700 19px 'Playfair Display'}.dna-orbit i{position:absolute;width:13px;height:13px;background:var(--pub-gold);border-radius:50%}.dna-orbit i:nth-child(2){top:8px;left:43px}.dna-orbit i:nth-child(3){right:8px;bottom:43px}.dna-orbit i:nth-child(4){left:16px;bottom:22px}.community-preview{background:#230711}.section-heading-light h2{color:#fff}.section-heading-light p{color:rgba(255,255,255,.55)}.preview-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.preview-card{aspect-ratio:4/5;border-radius:22px;overflow:hidden;position:relative;background:#39101a}.preview-card img{width:100%;height:100%;object-fit:cover}.preview-card:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(20,2,7,.94))}.preview-overlay{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;color:#fff}.preview-overlay span{color:#e5c58e;font-size:12px}.preview-overlay h3{font:600 25px 'Playfair Display';margin:8px 0 5px}.preview-overlay p{font-size:12px;color:rgba(255,255,255,.6);margin:0}.public-access{padding:120px max(7vw,28px);display:grid;grid-template-columns:1fr minmax(360px,480px);gap:9vw;align-items:center;max-width:1320px;margin:auto}.access-points{display:grid;gap:12px;margin-top:27px;color:#51484c;font-size:14px}.access-points i{color:var(--pub-wine);margin-right:8px}.access-card{background:#fff;border:1px solid var(--pub-line);border-radius:27px;padding:33px;box-shadow:0 25px 70px rgba(55,23,31,.1)}.access-card-header span{font-size:11px;color:var(--pub-gold);text-transform:uppercase;letter-spacing:.13em;font-weight:700}.access-card-header h3{font:600 31px 'Playfair Display';margin:8px 0 25px}.public-form label{display:block;font-size:12px;font-weight:700;margin-bottom:15px;color:#51484c}.public-form input,.resend-details input{display:block;width:100%;height:50px;border:1px solid var(--pub-line);border-radius:12px;padding:0 14px;margin-top:7px;font:14px 'DM Sans';outline:none;background:#fbfaf8}.public-form input:focus{border-color:var(--pub-wine);box-shadow:0 0 0 3px rgba(104,26,41,.08)}.form-help{text-align:right;margin:-5px 0 18px}.form-help a{font-size:12px;color:var(--pub-wine);text-decoration:none}.form-alert{padding:12px;border-radius:10px;font-size:12px;margin-bottom:17px}.form-alert-error{background:#fff0f0;color:#b62e34}.form-alert-success{background:#effaf2;color:#25753b}.access-divider{height:40px;display:flex;align-items:center;justify-content:center;color:#aaa;font-size:11px}.access-divider:before,.access-divider:after{content:"";height:1px;background:var(--pub-line);flex:1}.access-divider span{padding:0 12px}.resend-details{margin-top:18px;text-align:center}.resend-details summary{cursor:pointer;font-size:11px;color:#8a8085}.resend-details form{margin-top:12px;display:grid;gap:8px}.resend-details button{border:0;background:#f1ece8;color:var(--pub-wine);height:40px;border-radius:10px;font-weight:700}.public-footer{background:#130308;color:rgba(255,255,255,.52);padding:55px max(6vw,28px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}.public-footer .public-brand{color:#fff}.public-footer p{font-size:13px}.public-footer div{display:flex;gap:22px}.public-footer div a{color:#fff;text-decoration:none;font-size:12px}.public-footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:22px;font-size:10px}@media(max-width:980px){.public-nav{display:none}.public-hero{grid-template-columns:1fr;padding-top:125px}.public-hero-copy{text-align:center;margin:auto}.hero-actions,.hero-trust{justify-content:center}.public-showcase{max-width:460px;margin-top:35px}.public-metrics{margin:-24px 20px 0;grid-template-columns:repeat(2,1fr);gap:20px}.public-metrics div:nth-child(2){border-right:0}.feature-grid{grid-template-columns:1fr 1fr}.feature-large{grid-row:auto;grid-column:span 2}.feature-wide{grid-column:span 2}.public-access{grid-template-columns:1fr}.access-copy{text-align:center}.access-points{justify-content:center}.preview-grid{overflow-x:auto;grid-template-columns:repeat(3,300px)}}@media(max-width:620px){.public-header{height:67px}.public-login-link{padding:8px 14px}.public-hero{min-height:auto;padding:112px 20px 68px}.public-hero h1{font-size:47px}.public-hero-copy>p{font-size:16px}.hero-actions{display:grid}.hero-trust{display:grid;gap:8px}.public-showcase{max-width:310px}.floating-note{display:none}.showcase-photo h3{font-size:21px}.public-metrics{padding:18px 10px}.public-metrics strong{font-size:25px}.public-metrics span{font-size:8px}.public-section{padding:85px 18px}.feature-grid{grid-template-columns:1fr}.feature-card,.feature-large,.feature-wide{grid-column:auto}.feature-wide{grid-template-columns:1fr}.dna-orbit{margin-top:25px}.preview-grid{grid-template-columns:repeat(3,265px)}.public-access{padding:85px 18px}.access-card{padding:24px}.public-footer{grid-template-columns:1fr;text-align:center}.public-footer div{justify-content:center}.public-footer small{grid-column:auto}}

/* Build 006: trust metrics and WineCommerce partnership */
.note-dna small{display:block;margin-top:3px;font-size:8px;letter-spacing:.06em;text-transform:uppercase;opacity:.68;font-weight:700}
.partner-lockup{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:9px 13px;border:1px solid rgba(100,28,40,.14);border-radius:999px;text-decoration:none;color:inherit;background:rgba(255,255,255,.72);transition:.2s ease}
.partner-lockup:hover{transform:translateY(-2px);border-color:rgba(100,28,40,.32)}
.partner-lockup span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;opacity:.55}.partner-lockup strong{font-family:'DM Sans',sans-serif;color:#641c28;font-size:13px}
.public-metrics strong{font-size:clamp(1.05rem,2vw,1.65rem);white-space:normal}

/* Build 017: Registration Experience */
.registration-page{min-height:100vh;background:#f7f4f1;color:#24171b;font-family:'DM Sans',sans-serif}.registration-header{height:82px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(83,51,61,.1);background:rgba(247,244,241,.86);backdrop-filter:blur(18px);position:relative;z-index:5}.registration-header .public-brand{color:#681a29}.registration-login{display:flex;align-items:center;gap:9px;color:#681a29;text-decoration:none;font-size:13px;font-weight:700}.registration-shell{min-height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.7fr);gap:7vw;align-items:center;max-width:1320px;margin:auto;padding:64px max(5vw,24px) 70px}.registration-story{max-width:650px}.registration-story h1{font:600 clamp(48px,5.7vw,78px)/.99 'Playfair Display',serif;letter-spacing:-.045em;margin:22px 0 24px;color:#2b1119}.registration-story>p{font-size:18px;line-height:1.75;color:#746970;max-width:590px}.registration-benefits{display:grid;gap:13px;margin-top:38px}.registration-benefits article{display:flex;gap:16px;align-items:center;padding:16px 18px;border:1px solid rgba(104,26,41,.1);background:rgba(255,255,255,.55);border-radius:16px}.registration-benefits article>i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#f1e5e7;color:#681a29}.registration-benefits strong,.registration-benefits span{display:block}.registration-benefits strong{font-size:14px}.registration-benefits span{font-size:12px;color:#8b8085;margin-top:3px}.registration-quote{margin-top:31px;padding:24px 27px;border-left:3px solid #a68146;background:#efe8e3;border-radius:0 18px 18px 0;position:relative}.registration-quote>i{color:#a68146}.registration-quote p{font:600 20px/1.35 'Playfair Display';margin:10px 0 9px}.registration-quote span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#887b80}.registration-card{background:#fff;border:1px solid rgba(90,58,67,.12);border-radius:28px;padding:38px;box-shadow:0 28px 80px rgba(55,23,31,.11)}.registration-card-head{margin-bottom:25px}.registration-step{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a68146}.registration-card-head h2{font:600 36px 'Playfair Display';margin:8px 0 4px;color:#2b1119}.registration-card-head p{margin:0;color:#90858a;font-size:13px}.registration-form{display:grid;gap:17px}.registration-field label{display:block;font-size:12px;font-weight:700;color:#51464b;margin-bottom:7px}.registration-field small{display:block;font-size:10px;color:#9a8f94;margin-top:6px}.registration-input{height:52px;border:1px solid #e3dcda;border-radius:13px;display:flex;align-items:center;background:#fcfbfa;transition:.18s ease;overflow:hidden}.registration-input:focus-within{border-color:#681a29;box-shadow:0 0 0 4px rgba(104,26,41,.075);background:#fff}.registration-input>i,.registration-prefix{width:45px;text-align:center;color:#988d91;font-size:14px}.registration-input input{border:0;outline:0;background:transparent;width:100%;height:100%;padding:0 13px 0 0;font:14px 'DM Sans';color:#2b2024}.registration-input input::placeholder{color:#aaa1a5}.password-toggle{width:46px;height:100%;border:0;background:transparent;color:#81767b;cursor:pointer}.password-strength{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:8px}.password-strength i{height:3px;border-radius:999px;background:#e7e0de}.password-strength span{grid-column:1/-1;font-size:10px;color:#9a8f94;margin-top:2px}.password-strength[data-score="1"] i:first-child,.password-strength[data-score="2"] i:nth-child(-n+2),.password-strength[data-score="3"] i{background:#8a2839}.registration-consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.5;color:#7a6f74;cursor:pointer}.registration-consent input{margin-top:2px;accent-color:#681a29}.registration-consent a{color:#681a29;font-weight:700;text-decoration:none}.registration-submit{width:100%;border:0;justify-content:center;margin-top:2px}.registration-security{display:flex;gap:9px;align-items:center;padding:15px 0 0;color:#8b8085;font-size:10px}.registration-security i{color:#681a29}.registration-signin{text-align:center;margin:21px 0 0;font-size:12px;color:#8b8085}.registration-signin a{color:#681a29;font-weight:700;text-decoration:none}.registration-form.was-validated input:invalid{box-shadow:none}.registration-form.was-validated .registration-input:has(input:invalid){border-color:#bd4b55;background:#fff7f7}.registration-footer{max-width:1320px;margin:auto;padding:0 max(5vw,24px) 24px;display:flex;justify-content:space-between;color:#9a8f94;font-size:10px}.registration-footer span{font:700 15px 'Playfair Display';color:#681a29}.form-alert{display:flex;gap:9px;align-items:flex-start}.form-alert i{margin-top:1px}@media(max-width:960px){.registration-shell{grid-template-columns:1fr;max-width:720px;gap:45px}.registration-story{text-align:center;max-width:none}.registration-story>p{margin-inline:auto}.registration-benefits{text-align:left}.registration-quote{text-align:left}.registration-card{max-width:560px;width:100%;margin:auto}}@media(max-width:620px){.registration-header{height:68px}.registration-login{font-size:0}.registration-login i{font-size:15px}.registration-shell{padding:42px 16px 50px}.registration-story h1{font-size:44px}.registration-story>p{font-size:15px}.registration-benefits article{padding:14px}.registration-quote{display:none}.registration-card{padding:25px 20px;border-radius:22px}.registration-card-head h2{font-size:31px}.registration-footer{padding-inline:18px}}
