@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400 600;font-display:swap;src:url("assets/fonts/cormorant-garamond-latin.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400 500;font-display:swap;src:url("assets/fonts/cormorant-garamond-italic-latin.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 700;font-display:swap;src:url("assets/fonts/manrope-latin.woff2") format("woff2")}

:root {
  --ink: #1d1118;
  --plum: #54163b;
  --plum-2: #86345f;
  --gold: #c89b52;
  --gold-light: #f0d8a6;
  --cream: #f6efe8;
  --paper: #fffaf6;
  --muted: #71656b;
  --line: rgba(53, 27, 42, .14);
  --serif: "Cormorant Garamond", Iowan Old Style, Baskerville, "Times New Roman", serif;
  --sans: "Manrope", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 16px; line-height: 1.6; overflow-x: hidden; }
img, video { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
em { font-weight: 400; color: var(--gold); }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 100; padding: .7rem 1rem; background: white; border-radius: 99px; }
.skip-link:focus { top: 1rem; }
.scroll-progress { position: fixed; inset: 0 0 auto; height: 3px; z-index: 100; pointer-events: none; }
.scroll-progress span { display: block; width: 100%; height: 100%; background: linear-gradient(90deg, var(--gold), var(--plum-2)); transform: scaleX(0); transform-origin: left; }
.section-shell { width: min(1220px, calc(100% - 48px)); margin-inline: auto; }

.site-header { height: 88px; padding: 0 max(24px, calc((100vw - 1220px)/2)); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; background: rgba(255,253,249,.88); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 50; backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; width: fit-content; }
.brand img { width: 188px; height: 58px; object-fit: contain; }
.desktop-nav { display: flex; align-items: center; gap: 34px; font-size: .82rem; letter-spacing: .06em; }
.desktop-nav a { position: relative; }
.desktop-nav a::after { content:""; position: absolute; left: 0; bottom: -7px; width: 100%; height: 1px; background: var(--gold); transform: scaleX(0); transform-origin: right; transition: transform .35s ease; }
.desktop-nav a:hover::after { transform: scaleX(1); transform-origin: left; }
.header-cta { justify-self: end; display: inline-flex; gap: .65rem; align-items: center; padding: .72rem 1.1rem; border: 1px solid var(--ink); border-radius: 99px; font-size: .8rem; font-weight: 650; letter-spacing: .05em; transition: .25s ease; }
.header-cta:hover { color: white; background: var(--ink); }
.menu-toggle, .mobile-nav { display: none; }

.hero { min-height: calc(100svh - 88px); position: relative; isolation: isolate; display: flex; align-items: stretch; overflow: hidden; color: white; background: #210819 url("assets/aurennia-hero-editorial-v2.webp") 54% center / cover no-repeat; }
.hero::before { content:""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(24,3,19,.98) 0%, rgba(35,7,28,.92) 28%, rgba(38,8,30,.64) 48%, rgba(26,5,21,.12) 76%), linear-gradient(180deg, rgba(18,3,15,.2), transparent 58%, rgba(18,3,15,.52)); }
.hero::after { content:""; position: absolute; inset: auto 0 0; z-index: -1; height: 22%; background: linear-gradient(transparent, rgba(21,4,17,.46)); pointer-events: none; }
.hero-inner { min-height: inherit; display: flex; align-items: center; padding-block: clamp(70px, 8vw, 118px); }
.hero-copy { width: min(690px, 61%); position: relative; z-index: 1; text-shadow: 0 2px 28px rgba(10,0,8,.24); }
.eyebrow { margin: 0 0 1.35rem; display: flex; align-items: center; gap: 10px; font-size: .71rem; font-weight: 650; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow span { width: 28px; height: 1px; background: var(--gold); }
.hero h1, .section-heading h2, .experience h2, .process h2, .faq h2, .final-cta h2 { margin: 0; font-family: var(--serif); font-weight: 400; line-height: .96; letter-spacing: -.045em; }
.hero h1 { font-size: clamp(4rem, 7vw, 7rem); max-width: 720px; }
.hero h1 em { display: block; font-style: italic; }
.hero-lede { max-width: 575px; margin: 2rem 0 2.1rem; color: rgba(255,255,255,.78); font-size: clamp(1.05rem, 1.5vw, 1.22rem); line-height: 1.72; }
.hero-actions, .cta-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; }
.button { min-height: 52px; padding: .9rem 1.25rem; display: inline-flex; justify-content: center; align-items: center; gap: .75rem; border-radius: 99px; font-size: .82rem; font-weight: 700; letter-spacing: .045em; transition: transform .25s ease, background .25s ease, color .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-gold { color: var(--ink); background: var(--gold-light); border: 1px solid var(--gold-light); }
.button-gold:hover { background: #f1dba7; }
.text-link { display: inline-flex; gap: .6rem; align-items: center; border-bottom: 1px solid rgba(43,11,36,.35); padding: .5rem 0 .35rem; font-size: .85rem; font-weight: 650; }
.hero .text-link { border-bottom-color: rgba(255,255,255,.44); }
.hero-proof { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 3.1rem 0 0; padding: 1.45rem 0 0; border-top: 1px solid rgba(255,255,255,.25); max-width: 610px; }
.hero-proof div + div { border-left: 1px solid rgba(255,255,255,.22); padding-left: 1.45rem; }
.hero-proof dt { font-family: var(--serif); font-size: 1.48rem; line-height: 1.1; }
.hero-proof dd { margin: .35rem 0 0; color: rgba(255,255,255,.64); font-size: .68rem; text-transform: uppercase; letter-spacing: .13em; }
@keyframes sheen { 0%,55% { transform: translateX(-120%); } 82%,100% { transform: translateX(120%); } }
@keyframes lineFlow { to { transform: translateX(0); } }
@keyframes starPulse { 0%,100% { transform: scale(.8) rotate(0); opacity: .45; } 50% { transform: scale(1.15) rotate(18deg); opacity: 1; } }
@keyframes floatSoft { 0%,100% { transform: translateY(0) rotate(8deg); } 50% { transform: translateY(-9px) rotate(4deg); } }
@keyframes orbit { to { transform: rotate(360deg); } }

.marquee { overflow: hidden; border-block: 1px solid var(--line); background: var(--cream); }
.marquee-track { width: max-content; display: flex; align-items: center; gap: 36px; padding: 17px 0; animation: marquee 30s linear infinite; }
.marquee span { font-family: var(--serif); font-size: 1.05rem; font-style: italic; }
.marquee b { color: var(--gold); font-size: .8rem; }
@keyframes marquee { to { transform: translateX(-50%); } }

.collections { padding-block: clamp(90px, 10vw, 150px); }
.section-heading { display: grid; grid-template-columns: 1.25fr .75fr; column-gap: 8vw; align-items: end; margin-bottom: 62px; }
.section-heading .eyebrow { grid-column: 1 / -1; }
.section-heading h2, .experience h2, .process h2, .faq h2, .final-cta h2 { font-size: clamp(3rem, 5.5vw, 5.5rem); }
.section-heading > p:last-child { max-width: 440px; margin: 0 0 .5rem; color: var(--muted); font-size: 1.04rem; }
.collection-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.collection-card { position: relative; min-width: 0; }
.collection-card .card-art { transition: transform .65s cubic-bezier(.2,.8,.2,1), box-shadow .65s ease; }
.collection-card:hover .card-art { transform: translateY(-8px) scale(1.01); box-shadow: 0 28px 55px rgba(43,11,36,.15); }
.card-index { position: absolute; z-index: 3; top: 18px; left: 18px; width: 38px; height: 38px; display: grid; place-items: center; color: white; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; font-size: .67rem; letter-spacing: .08em; }
.card-art { height: clamp(370px, 46vw, 560px); position: relative; overflow: hidden; display: grid; place-items: center; }
.wedding .card-art { color: white; background: radial-gradient(circle at 45% 28%, #8c5b77, transparent 40%), linear-gradient(155deg, #5b173f, #26091f); }
.quince .card-art { color: var(--ink); background: radial-gradient(circle at 50% 45%, #fff8dc, transparent 25%), linear-gradient(160deg, #ead7a5, #b5838d); }
.celebration .card-art { color: var(--ink); background: linear-gradient(145deg, #e9d4c3, #f7efe7 55%, #d9b6c2); }
.card-art::after { content:""; position: absolute; inset: 15px; border: 1px solid rgba(255,255,255,.45); }
.arch { width: 68%; height: 72%; position: absolute; bottom: 0; border: 1px solid rgba(230,201,143,.65); border-bottom: 0; border-radius: 50% 50% 0 0; }
.monogram { position: relative; z-index: 1; text-align: center; font-family: var(--serif); font-size: 5.5rem; line-height: .48; font-weight: 400; }
.monogram i { color: var(--gold-light); font-size: 2.5rem; }
.card-art .date { position: absolute; z-index: 2; bottom: 42px; font-size: .65rem; letter-spacing: .25em; }
.halo { width: 230px; height: 230px; position: absolute; border: 1px solid rgba(255,255,255,.75); border-radius: 50%; box-shadow: 0 0 0 35px rgba(255,255,255,.12), 0 0 0 70px rgba(255,255,255,.08); }
.roman { position: relative; z-index: 1; font-family: var(--serif); font-size: 7rem; letter-spacing: -.08em; }
.plus { font-family: var(--serif); font-size: 9rem; font-weight: 200; color: var(--plum); }
.confetti { position: absolute; width: 90px; height: 12px; background: var(--gold); border-radius: 50%; transform: rotate(-36deg); }
.c1 { left: -15px; top: 22%; }.c2 { right: -20px; top: 35%; background: var(--plum); transform: rotate(38deg); }.c3 { left: 18%; bottom: 20%; width: 50px; background: #c67273; transform: rotate(60deg); }
.card-copy { padding: 25px 4px; border-bottom: 1px solid var(--line); }
.card-copy p { margin: 0 0 7px; color: var(--gold); font-size: .65rem; text-transform: uppercase; letter-spacing: .14em; }
.card-copy h3 { margin: 0; font-family: var(--serif); font-size: 2rem; font-weight: 400; }
.card-copy span { display: block; margin-top: 6px; color: var(--muted); font-size: .88rem; }

.examples { padding-block: clamp(90px, 10vw, 145px); color: white; background: linear-gradient(140deg, #1c0717, var(--plum)); overflow: hidden; }
.examples-shell { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(55px, 8vw, 110px); align-items: center; }
.examples-copy h2, .plans-heading h2 { margin: 0; font-family: var(--serif); font-size: clamp(3rem, 5.5vw, 5.3rem); font-weight: 400; line-height: .97; letter-spacing: -.045em; }
.examples-copy > p:not(.eyebrow) { max-width: 490px; margin: 28px 0 33px; color: rgba(255,255,255,.66); }
.example-tabs { display: flex; flex-wrap: wrap; gap: 9px; }
.example-tab { padding: .72rem 1rem; color: rgba(255,255,255,.7); background: transparent; border: 1px solid rgba(255,255,255,.22); border-radius: 99px; cursor: pointer; font-size: .77rem; }
.example-tab.is-active { color: var(--ink); background: var(--gold-light); border-color: var(--gold-light); }
.example-actions { margin-top: 33px; display: flex; align-items: center; gap: 16px; }
.example-actions > span { max-width: 170px; color: rgba(255,255,255,.4); font-size: .68rem; line-height: 1.4; }
.example-browser { --sample-image: url("assets/example-wedding-v2.webp"); --sample-overlay: linear-gradient(90deg, rgba(25,5,20,.5), rgba(25,5,20,.16)); --invite-surface: rgba(28,6,22,.56); --invite-text: #fffdf9; --invite-accent: var(--gold-light); --invite-border: rgba(230,201,143,.72); --note-surface: rgba(24,4,19,.82); --note-text: #fffdf9; position: relative; padding: 0; overflow: hidden; background: #2b0b24; border: 1px solid rgba(230,201,143,.3); border-radius: 30px; box-shadow: 0 45px 100px rgba(0,0,0,.42); transform: perspective(1200px) rotateY(-3deg); transition: opacity .25s ease, transform .55s cubic-bezier(.2,.7,.2,1); }
.example-browser:hover { transform: perspective(1200px) rotateY(0) translateY(-5px); }
.example-browser.is-switching { opacity: .18; transform: perspective(1200px) rotateY(-3deg) scale(.985); }
.browser-canvas { min-height: 620px; position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center; background-image: var(--sample-overlay), var(--sample-image); background-position: center; background-size: cover; transition: background .45s ease; }
.browser-canvas::before { content:""; position: absolute; inset: 18px; z-index: -1; border: 1px solid rgba(255,255,255,.34); border-radius: 18px; pointer-events: none; }
.browser-canvas::after { content:""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(180deg, rgba(0,0,0,.05), transparent 60%, rgba(0,0,0,.35)); pointer-events: none; }
.example-invite { width: min(74%, 500px); min-height: 500px; position: relative; z-index: 1; padding: 62px 40px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--invite-text); background: var(--invite-surface); border: 1px solid var(--invite-border); box-shadow: 0 28px 70px rgba(0,0,0,.28); backdrop-filter: blur(5px) saturate(.9); transition: background .45s ease, color .45s ease, border-color .45s ease; }
.example-invite::before, .example-invite::after { content:""; width: 34px; height: 34px; position: absolute; border-color: var(--invite-accent); opacity: .8; }
.example-invite::before { top: 13px; left: 13px; border-top: 1px solid; border-left: 1px solid; }
.example-invite::after { right: 13px; bottom: 13px; border-right: 1px solid; border-bottom: 1px solid; }
.invite-corner { position: absolute; color: var(--invite-accent); font-size: .65rem; opacity: .85; }
.invite-corner-one { top: 22px; right: 24px; }
.invite-corner-two { left: 24px; bottom: 22px; }
.example-invite > p:first-of-type { margin: 0 0 40px; color: var(--invite-accent); font-size: .63rem; font-weight: 700; letter-spacing: .34em; }
.example-invite h3 { max-width: 420px; margin: 0; font-family: var(--serif); font-size: clamp(3rem, 5.2vw, 5rem); font-weight: 400; line-height: .82; text-wrap: balance; }
.example-invite h3 em { display: inline-block; color: var(--invite-accent); font-size: .5em; font-style: italic; }
.example-rule { width: 1px; height: 72px; margin: 28px 0; position: relative; background: color-mix(in srgb, var(--invite-accent) 66%, transparent); }
.example-rule span { position: absolute; left: -8px; top: 28px; color: var(--invite-accent); }
.example-invite > p:nth-of-type(2) { margin: 0; font-size: .63rem; font-weight: 650; letter-spacing: .27em; }
.example-invite button { margin-top: 38px; padding: .78rem 1.15rem; color: inherit; background: rgba(255,255,255,.06); border: 1px solid color-mix(in srgb, currentColor 72%, transparent); border-radius: 99px; font-size: .57rem; font-weight: 700; letter-spacing: .14em; backdrop-filter: blur(8px); }
.browser-note { position: absolute; z-index: 3; right: 25px; bottom: 23px; max-width: 215px; padding: 14px 17px; color: var(--note-text); background: var(--note-surface); border: 1px solid rgba(255,255,255,.18); border-radius: 0 14px 14px 14px; box-shadow: 0 12px 34px rgba(0,0,0,.22); backdrop-filter: blur(12px); }
.browser-note b, .browser-note span { display: block; }.browser-note b { color: var(--invite-accent); font-family: var(--serif); font-size: 1.04rem; font-weight: 400; }.browser-note span { margin-top: 3px; opacity: .72; font-size: .63rem; line-height: 1.4; }
.example-browser[data-theme="quince"] { --sample-image: url("assets/example-xv-v2.webp"); --sample-overlay: linear-gradient(90deg, rgba(54,13,40,.28), rgba(54,13,40,.08)); --invite-surface: rgba(66,19,48,.46); --invite-text: #fff9f2; --invite-accent: #f0c98b; --invite-border: rgba(241,204,147,.72); --note-surface: rgba(62,17,45,.86); --note-text: #fff9f2; }
.example-browser[data-theme="quince"] .browser-canvas { background-position: 54% center; }
.example-browser[data-theme="baby"] { --sample-image: url("assets/example-baby-v2.webp"); --sample-overlay: linear-gradient(90deg, rgba(255,250,241,.12), rgba(255,250,241,.02)); --invite-surface: rgba(255,253,248,.72); --invite-text: #344338; --invite-accent: #987745; --invite-border: rgba(129,145,118,.66); --note-surface: rgba(255,253,248,.88); --note-text: #344338; }
.example-browser[data-theme="baby"] .browser-canvas { background-position: center; }

.experience { color: white; background: var(--ink); overflow: hidden; }
.experience-inner { min-height: 820px; display: grid; grid-template-columns: .9fr .85fr 1fr; gap: clamp(30px, 5vw, 78px); align-items: center; padding-block: 105px; }
.eyebrow.light { color: var(--gold-light); }
.experience-intro p:not(.eyebrow) { max-width: 430px; margin: 26px 0 32px; color: rgba(255,255,255,.67); }
.button-outline { color: white; border: 1px solid rgba(255,255,255,.5); }
.button-outline:hover { color: var(--ink); background: white; }
.phone-stage { position: relative; display: grid; place-items: center; }
.phone-glow { position: absolute; width: 140%; aspect-ratio: 1; background: radial-gradient(circle, rgba(195,154,82,.35), transparent 62%); }
.phone { width: min(285px, 100%); aspect-ratio: .43; position: relative; overflow: hidden; background: #0d0710; border: 8px solid #161116; border-radius: 42px; box-shadow: 0 40px 70px rgba(0,0,0,.5); transform: rotate(2.5deg); }
.phone-bar { height: 33px; padding: 8px 15px; display: flex; justify-content: space-between; font-size: .58rem; }
.phone-bar i { width: 72px; height: 18px; position: absolute; top: 0; left: calc(50% - 36px); background: #161116; border-radius: 0 0 12px 12px; }
.phone-screen { height: calc(100% - 33px); position: relative; display: block; overflow: hidden; background: #2b0b24; }
.phone-screen img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center center; transition: transform .55s ease; }
.phone:hover .phone-screen img { transform: scale(1.025); }
.feature-list { margin: 0; padding: 0; list-style: none; }
.feature-list li { display: grid; grid-template-columns: 40px 1fr; gap: 15px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.feature-list li > span { color: var(--gold); font-size: .66rem; letter-spacing: .12em; }
.feature-list h3 { margin: 0; font-family: var(--serif); font-size: 1.34rem; font-weight: 400; }
.feature-list p { margin: 5px 0 0; color: rgba(255,255,255,.56); font-size: .83rem; }

.details { padding-block: clamp(90px, 10vw, 145px); }
.section-heading.compact { display: block; max-width: 840px; margin-bottom: 60px; }
.detail-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.detail-card { min-height: 300px; padding: 34px 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: color .3s ease, background .3s ease; }
.detail-card:hover { color: white; background: var(--plum); }
.detail-card > span { width: 45px; height: 45px; display: grid; place-items: center; margin-bottom: 85px; color: var(--gold); border: 1px solid var(--line); border-radius: 50%; font-family: var(--serif); }
.detail-card h3 { margin: 0 0 10px; font-family: var(--serif); font-size: 1.35rem; font-weight: 400; }
.detail-card p { margin: 0; color: var(--muted); font-size: .86rem; }
.detail-card:hover p { color: rgba(255,255,255,.7); }

.plans { padding-block: clamp(95px, 11vw, 155px); background: #f3ede4; }
.plans-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: 8vw; align-items: end; margin-bottom: 62px; }
.plans-heading > p { margin: 0 0 8px; color: var(--muted); }
.plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.plan-card { min-width: 0; position: relative; padding: 35px 30px 38px; background: var(--paper); border: 1px solid var(--line); transition: transform .35s ease, box-shadow .35s ease; }
.plan-card:hover { transform: translateY(-8px); box-shadow: 0 25px 60px rgba(43,11,36,.12); }
.plan-card.featured { color: white; background: var(--plum); border-color: var(--plum); transform: translateY(-14px); }
.plan-card.featured:hover { transform: translateY(-22px); }
.plan-card.signature { border-color: var(--gold); }
.plan-badge { position: absolute; right: 20px; top: -14px; padding: 6px 12px; color: var(--ink); background: var(--gold-light); border-radius: 99px; font-size: .61rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.plan-top { display: flex; justify-content: space-between; align-items: center; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.featured .plan-top { border-color: rgba(255,255,255,.18); }
.plan-top span { color: var(--gold); font-size: .68rem; letter-spacing: .12em; }.plan-top p { margin: 0; font-family: var(--serif); font-size: 1.65rem; }
.plan-card h3 { min-height: 105px; margin: 32px 0 17px; font-family: var(--serif); font-size: 1.65rem; font-weight: 400; line-height: 1.12; }
.plan-price { margin: 0 0 24px; color: var(--muted); font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; }
.featured .plan-price { color: rgba(255,255,255,.55); }
.plan-button { width: 100%; color: var(--ink); border: 1px solid var(--ink); }
.featured .button { width: 100%; }
.plan-card ul { margin: 30px 0 0; padding: 0; list-style: none; }
.plan-card li { padding: 11px 0 11px 22px; position: relative; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .82rem; }
.plan-card li::before { content:"✦"; position: absolute; left: 0; color: var(--gold); font-size: .62rem; }
.featured li { color: rgba(255,255,255,.72); border-color: rgba(255,255,255,.13); }
.plan-card small { display: block; margin-top: 16px; color: var(--muted); font-size: .65rem; }.featured small { color: rgba(255,255,255,.5); }
.addons { margin-top: 38px; padding: 35px; display: grid; grid-template-columns: .65fr 1.35fr; gap: 50px; background: var(--paper); border: 1px solid var(--line); }
.addons-title p { margin: 0; font-family: var(--serif); font-size: 1.6rem; }.addons-title span { display: block; margin-top: 6px; color: var(--muted); font-size: .8rem; }
.addon-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 0 28px; }
.addon-grid span { padding: 10px 0; border-bottom: 1px solid var(--line); font-size: .79rem; }

.process { padding-block: 110px; background: var(--cream); }
.process-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 70px; }
.process-heading .eyebrow { align-self: flex-start; white-space: nowrap; }
.steps { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3,1fr); }
.steps li { min-height: 265px; padding: 0 42px; border-left: 1px solid var(--line); }
.steps li:first-child { padding-left: 0; border-left: 0; }
.step-number { color: var(--gold); font-size: .73rem; letter-spacing: .14em; }
.step-line { width: 100%; height: 1px; margin: 20px 0 55px; background: var(--line); position: relative; }
.step-line::before { content:""; width: 7px; height: 7px; position: absolute; left: 0; top: -3px; background: var(--gold); border-radius: 50%; }
.steps h3 { margin: 0 0 12px; font-family: var(--serif); font-size: 1.7rem; font-weight: 400; line-height: 1.1; }
.steps p { margin: 0; color: var(--muted); font-size: .9rem; }

.faq { display: grid; grid-template-columns: .75fr 1.25fr; gap: 10vw; padding-block: clamp(90px, 10vw, 150px); }
.faq-title > p:not(.eyebrow) { max-width: 340px; margin: 28px 0 20px; color: var(--muted); }
.text-link.dark { color: var(--plum); font-size: .78rem; }
.accordion { border-top: 1px solid var(--line); }
.accordion details { border-bottom: 1px solid var(--line); }
.accordion summary { min-height: 90px; display: flex; justify-content: space-between; gap: 25px; align-items: center; cursor: pointer; list-style: none; font-family: var(--serif); font-size: 1.25rem; }
.accordion summary::-webkit-details-marker { display: none; }
.accordion summary i { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 50%; font-family: var(--sans); font-size: 1rem; font-style: normal; transition: .25s ease; }
.accordion details[open] summary i { color: white; background: var(--plum); transform: rotate(45deg); }
.accordion details p { max-width: 620px; margin: -5px 55px 28px 0; color: var(--muted); font-size: .92rem; }

.final-cta { min-height: 690px; position: relative; overflow: hidden; display: grid; place-items: center; padding: 80px 24px; text-align: center; color: white; background: radial-gradient(circle at 50% 20%, #7a315c 0, var(--plum) 34%, var(--ink) 82%); }
.final-cta::before, .final-cta::after { content:""; position: absolute; width: 520px; height: 520px; border: 1px solid rgba(230,201,143,.18); border-radius: 50%; }
.final-cta::before { left: -290px; top: -150px; }.final-cta::after { right: -280px; bottom: -200px; }
.cta-star { position: absolute; top: 70px; color: var(--gold-light); font-size: 2.6rem; }
.cta-inner { position: relative; z-index: 2; max-width: 910px; }
.cta-inner .eyebrow { justify-content: center; }
.cta-inner > p:not(.eyebrow) { max-width: 590px; margin: 30px auto 32px; color: rgba(255,255,255,.7); font-size: 1.06rem; }
.cta-actions { justify-content: center; }

footer { padding: 70px max(24px, calc((100vw - 1220px)/2)) 25px; color: white; background: #170512; display: grid; grid-template-columns: 1fr 1fr; gap: 65px; }
.footer-brand > img { width: 235px; height: auto; max-height: 92px; display: block; object-fit: contain; background: white; border-radius: 12px; }
.footer-brand p { margin: 20px 0 0; color: rgba(255,255,255,.45); font-family: var(--serif); font-style: italic; }
.footer-links { display: grid; grid-template-columns: repeat(2,1fr); gap: 40px; }
.footer-links div { display: flex; flex-direction: column; gap: 10px; }
.footer-links p { margin: 0 0 7px; color: var(--gold); font-size: .65rem; letter-spacing: .17em; text-transform: uppercase; }
.footer-links a { color: rgba(255,255,255,.65); font-size: .82rem; }
.footer-links a:hover { color: white; }
.footer-bottom { grid-column: 1 / -1; padding-top: 25px; display: flex; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.4); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.whatsapp-float { position: fixed; right: 20px; bottom: 20px; z-index: 40; display: flex; align-items: center; gap: 10px; padding: 7px 15px 7px 7px; color: white; background: var(--plum); border: 1px solid rgba(255,255,255,.35); border-radius: 99px; box-shadow: 0 12px 35px rgba(43,11,36,.25); }
.whatsapp-float span { width: 35px; height: 35px; display: grid; place-items: center; color: var(--ink); background: var(--gold-light); border-radius: 50%; font-size: .65rem; font-weight: 800; }
.whatsapp-float i { font-size: .75rem; font-style: normal; font-weight: 650; }

.reveal { opacity: 1; transform: none; transition: opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal-ready .reveal:not(.is-visible) { opacity: 0; transform: translateY(24px); }
.reveal.is-visible { opacity: 1; transform: none; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto; }
  .desktop-nav, .header-cta { display: none; }
  .menu-toggle { width: 44px; height: 44px; display: grid; place-content: center; gap: 6px; justify-self: end; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 50%; }
  .menu-toggle span { width: 18px; height: 1px; display: block; background: currentColor; transition: .25s ease; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-nav { position: absolute; inset: 88px 0 auto; padding: 26px 24px 32px; background: var(--paper); border-bottom: 1px solid var(--line); flex-direction: column; gap: 20px; }
  .mobile-nav:not([hidden]) { display: flex; }
  .hero { background-position: 62% center; }
  .hero::before { background: linear-gradient(90deg, rgba(24,3,19,.98) 0%, rgba(35,7,28,.91) 42%, rgba(34,7,27,.55) 72%, rgba(26,5,21,.22)), linear-gradient(180deg, rgba(18,3,15,.16), transparent 55%, rgba(18,3,15,.6)); }
  .hero-copy { width: min(680px, 76%); }
  .section-heading { grid-template-columns: 1fr; gap: 26px; }
  .collection-grid { grid-template-columns: repeat(2,1fr); }
  .collection-card:last-child { grid-column: 1 / -1; width: calc(50% - 11px); justify-self: center; }
  .examples-shell { grid-template-columns: 1fr; }
  .examples-copy { max-width: 720px; }
  .example-browser { width: min(720px,100%); justify-self: center; transform: none; }
  .experience-inner { grid-template-columns: 1fr 1fr; }
  .experience-intro { grid-column: 1 / -1; max-width: 780px; }
  .detail-grid { grid-template-columns: repeat(2,1fr); }
  .plans-heading { grid-template-columns: 1fr; gap: 30px; }
  .plan-grid { grid-template-columns: 1fr; width: min(680px,100%); margin-inline: auto; }
  .plan-card.featured { transform: none; }
  .plan-card.featured:hover { transform: translateY(-8px); }
  .addons { grid-template-columns: 1fr; gap: 25px; }
  .process-heading { display: block; }
  .process-heading .eyebrow { margin-bottom: 30px; }
  .faq { grid-template-columns: 1fr; gap: 60px; }
}

@media (max-width: 680px) {
  .section-shell { width: min(100% - 34px, 1220px); }
  .site-header { height: 74px; padding-inline: 17px; }
  .brand img { width: 154px; height: 48px; }
  .mobile-nav { top: 74px; }
  .hero { min-height: calc(100svh - 74px); background-position: 66% center; }
  .hero::before { background: linear-gradient(180deg, rgba(25,4,20,.84) 0%, rgba(29,5,23,.76) 55%, rgba(18,3,15,.94) 100%), linear-gradient(90deg, rgba(25,4,20,.88), rgba(25,4,20,.38)); }
  .hero-inner { padding-block: 62px 66px; align-items: flex-end; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: clamp(3.25rem, 15.7vw, 5.1rem); }
  .hero-lede { margin-block: 1.5rem; font-size: 1rem; }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .hero-proof { grid-template-columns: 1fr; margin-top: 2.4rem; }
  .hero-proof div { display: grid; grid-template-columns: 95px 1fr; align-items: center; padding: .7rem 0; border-bottom: 1px solid rgba(255,255,255,.2); }
  .hero-proof div + div { border-left: 0; padding-left: 0; }
  .hero-proof dd { margin: 0; }
  .marquee-track { gap: 24px; }
  .section-heading h2, .experience h2, .process h2, .faq h2, .final-cta h2 { font-size: clamp(2.9rem, 14vw, 4.3rem); }
  .collections, .examples, .details, .plans, .faq { padding-block: 85px; }
  .section-heading { margin-bottom: 44px; }
  .collection-grid { grid-template-columns: 1fr; }
  .collection-card:last-child { grid-column: auto; width: 100%; }
  .card-art { height: 460px; }
  .examples-shell { gap: 48px; }
  .example-actions { align-items: flex-start; flex-direction: column; }
  .example-actions > span { max-width: 260px; }
  .browser-canvas { min-height: 490px; }
  .example-invite { width: 85%; min-height: 400px; padding-inline: 22px; }
  .browser-note { right: 16px; bottom: 15px; }
  .experience-inner { min-height: auto; grid-template-columns: 1fr; padding-block: 85px; }
  .experience-intro { grid-column: auto; }
  .phone-stage { margin-block: 25px; }
  .phone { width: 265px; }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-card { min-height: 250px; }
  .detail-card > span { margin-bottom: 50px; }
  .plan-card { padding-inline: 23px; }
  .plan-card h3 { min-height: 0; }
  .addons { padding: 25px 22px; }
  .addon-grid { grid-template-columns: 1fr; }
  .process { padding-block: 85px; }
  .steps { grid-template-columns: 1fr; }
  .steps li, .steps li:first-child { min-height: auto; padding: 32px 0; border-left: 0; border-top: 1px solid var(--line); }
  .step-line { width: 45px; margin: 15px 0 30px; }
  .faq { gap: 45px; }
  .accordion summary { min-height: 82px; font-size: 1.08rem; }
  .final-cta { min-height: 650px; }
  .cta-actions { flex-direction: column; align-items: stretch; }
  footer { grid-template-columns: 1fr; padding-top: 55px; }
  .footer-links { gap: 20px; }
  .footer-bottom { flex-direction: column; gap: 10px; }
  .whatsapp-float i { display: none; }
  .whatsapp-float { padding: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}


/* === Aurennia premium homepage refresh · 2026-09-20 === */
body {
  background:
    radial-gradient(circle at 8% 2%, rgba(200,155,82,.055), transparent 24rem),
    var(--paper);
  text-rendering: optimizeLegibility;
}
::selection { background: var(--gold-light); color: var(--ink); }

.site-header {
  height: 82px;
  background: rgba(255,250,246,.84);
  border-bottom-color: rgba(53,27,42,.09);
  box-shadow: 0 12px 40px rgba(29,17,24,.035);
}
.brand img { width: 176px; height: 54px; }
.desktop-nav { gap: 38px; font-size: .76rem; font-weight: 600; }
.header-cta {
  border: 0;
  color: #fff;
  background: var(--ink);
  box-shadow: 0 8px 22px rgba(29,17,24,.12);
}
.header-cta:hover { background: var(--plum); transform: translateY(-1px); }

.hero {
  min-height: calc(100svh - 82px);
  background-position: 56% center;
}
.hero::before {
  background:
    radial-gradient(circle at 74% 32%, rgba(221,171,88,.17), transparent 23%),
    linear-gradient(90deg, rgba(17,7,13,.985) 0%, rgba(30,10,22,.94) 30%, rgba(44,12,31,.68) 51%, rgba(23,7,17,.14) 78%),
    linear-gradient(180deg, rgba(15,5,11,.14), transparent 48%, rgba(15,5,11,.66));
}
.hero-inner { padding-block: clamp(72px, 8vw, 120px); }
.hero-copy { width: min(760px, 66%); }
.hero .eyebrow {
  width: fit-content;
  padding: .58rem .85rem;
  margin-bottom: 1.5rem;
  color: rgba(255,255,255,.83);
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 99px;
  backdrop-filter: blur(10px);
}
.hero .eyebrow span { background: var(--gold-light); }
.hero h1 {
  max-width: 800px;
  font-size: clamp(4.25rem, 7.4vw, 7.8rem);
  line-height: .9;
  letter-spacing: -.052em;
  text-wrap: balance;
}
.hero h1 em {
  color: var(--gold-light);
  text-shadow: 0 10px 40px rgba(200,155,82,.18);
}
.hero-lede {
  max-width: 650px;
  color: rgba(255,255,255,.78);
  font-size: clamp(1.04rem, 1.45vw, 1.2rem);
}
.hero-actions { gap: 12px; }
.button {
  min-height: 54px;
  padding-inline: 1.4rem;
  letter-spacing: .025em;
  box-shadow: 0 10px 26px rgba(29,17,24,.08);
}
.button-gold {
  background: linear-gradient(135deg, #f4dfb3, #d9af68);
  border-color: transparent;
  box-shadow: 0 16px 36px rgba(200,155,82,.18);
}
.button-gold:hover { background: linear-gradient(135deg, #f8e9c9, #e3bc76); }
.button-ghost {
  color: #fff;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.28);
  backdrop-filter: blur(12px);
}
.button-ghost:hover { background: rgba(255,255,255,.14); }
.hero-contact {
  margin: 1.1rem 0 0;
  display: flex;
  align-items: center;
  gap: .55rem;
  color: rgba(255,255,255,.58);
  font-size: .72rem;
  letter-spacing: .025em;
}
.hero-contact > span {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #25d366;
  box-shadow: 0 0 0 5px rgba(37,211,102,.12);
}
.hero-contact strong { color: rgba(255,255,255,.9); font-weight: 600; }
.hero-proof {
  max-width: 680px;
  gap: 10px;
  margin-top: 2.25rem;
  padding-top: 0;
  border-top: 0;
}
.hero-proof div {
  min-height: 92px;
  padding: 1rem 1.1rem;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  backdrop-filter: blur(12px);
}
.hero-proof div + div { padding-left: 1.1rem; border-left: 1px solid rgba(255,255,255,.13); }
.hero-proof dt { color: #fff; font-size: 1.3rem; }
.hero-proof dd { color: rgba(255,255,255,.6); }

.marquee {
  color: #fff;
  background: var(--ink);
  border-color: rgba(255,255,255,.07);
}
.marquee b { color: var(--gold-light); }

.collections { padding-block: clamp(105px, 11vw, 165px); }
.section-heading h2, .experience h2, .process h2, .faq h2, .final-cta h2,
.examples-copy h2, .plans-heading h2 {
  letter-spacing: -.052em;
  text-wrap: balance;
}
.collection-grid { gap: 28px; }
.card-art {
  border-radius: 28px;
  box-shadow: 0 20px 60px rgba(29,17,24,.08);
}
.card-art::after { inset: 18px; border-radius: 20px; }
.card-copy { padding: 25px 6px 0; border-bottom: 0; }
.card-copy h3 { font-size: 2.2rem; }
.collection-card:hover .card-art { box-shadow: 0 34px 80px rgba(29,17,24,.16); }

.examples {
  background:
    radial-gradient(circle at 85% 16%, rgba(200,155,82,.19), transparent 26rem),
    linear-gradient(145deg, #160b12, #421329 56%, #1d1118);
}
.example-browser {
  border-color: rgba(240,216,166,.34);
  box-shadow: 0 52px 120px rgba(0,0,0,.48);
}

.experience {
  background:
    radial-gradient(circle at 55% 45%, rgba(200,155,82,.11), transparent 30rem),
    #171017;
}
.phone {
  border-color: #241b22;
  box-shadow: 0 44px 90px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.06);
}

.detail-grid { gap: 14px; border: 0; }
.detail-card {
  min-height: 300px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255,255,255,.46);
  box-shadow: 0 14px 40px rgba(29,17,24,.035);
}
.detail-card:hover {
  background:
    radial-gradient(circle at 20% 0%, rgba(240,216,166,.12), transparent 45%),
    var(--plum);
  transform: translateY(-5px);
}
.detail-card > span { margin-bottom: 74px; }

.plans {
  background:
    radial-gradient(circle at 12% 0%, rgba(200,155,82,.12), transparent 25rem),
    #f4ede6;
}
.plan-grid { gap: 22px; }
.plan-card {
  border-radius: 28px;
  overflow: visible;
  box-shadow: 0 14px 45px rgba(29,17,24,.045);
}
.plan-card.featured {
  background:
    radial-gradient(circle at 80% 4%, rgba(240,216,166,.15), transparent 15rem),
    linear-gradient(160deg, #5a163d, #3b102b);
  box-shadow: 0 28px 70px rgba(84,22,59,.23);
}
.plan-card.signature { border-color: rgba(200,155,82,.62); }
.addons { border-radius: 24px; }

.process { background: #fbf5ef; }
.steps li { border-color: rgba(53,27,42,.11); }

.accordion details { transition: background .25s ease, padding .25s ease; }
.accordion details[open] { padding-inline: 18px; background: rgba(200,155,82,.055); }

.final-cta {
  min-height: 720px;
  background:
    radial-gradient(circle at 50% 10%, rgba(240,216,166,.24), transparent 26rem),
    radial-gradient(circle at 85% 85%, rgba(134,52,95,.7), transparent 28rem),
    linear-gradient(145deg, #351126, #160b12);
}
.final-cta h2 { font-size: clamp(3.2rem, 6vw, 6.2rem); }
.final-cta::before, .final-cta::after { border-color: rgba(240,216,166,.2); }

footer { background: #120a0f; }
.footer-brand > img {
  background: rgba(255,255,255,.94);
  border-radius: 16px;
  padding: 4px 8px;
}

.whatsapp-float {
  right: 22px;
  bottom: 22px;
  background: #171017;
  border-color: rgba(255,255,255,.14);
  box-shadow: 0 18px 46px rgba(0,0,0,.22);
}
.whatsapp-float span {
  color: #fff;
  background: #25d366;
  box-shadow: 0 0 0 5px rgba(37,211,102,.1);
}
.whatsapp-float:hover { transform: translateY(-3px); }

@media (max-width: 980px) {
  .hero-copy { width: min(700px, 82%); }
  .site-header { height: 78px; }
  .mobile-nav { top: 78px; }
}

@media (max-width: 680px) {
  .site-header { height: 72px; }
  .mobile-nav { top: 72px; }
  .hero { min-height: calc(100svh - 72px); background-position: 68% center; }
  .hero::before {
    background:
      radial-gradient(circle at 76% 22%, rgba(221,171,88,.12), transparent 18rem),
      linear-gradient(180deg, rgba(20,7,14,.7) 0%, rgba(24,8,17,.76) 48%, rgba(15,5,11,.97) 100%),
      linear-gradient(90deg, rgba(20,7,14,.87), rgba(20,7,14,.28));
  }
  .hero-inner { padding-block: 54px 48px; }
  .hero .eyebrow { padding: .48rem .68rem; font-size: .62rem; }
  .hero h1 { font-size: clamp(3.35rem, 16.3vw, 5.35rem); line-height: .88; }
  .hero-lede { margin-block: 1.35rem; }
  .hero-actions { width: 100%; }
  .hero-actions .button { width: 100%; }
  .hero-contact { align-items: flex-start; line-height: 1.45; }
  .hero-proof { grid-template-columns: 1fr; gap: 8px; }
  .hero-proof div {
    min-height: 0;
    display: grid;
    grid-template-columns: 105px 1fr;
    align-items: center;
    padding: .82rem 1rem;
    border: 1px solid rgba(255,255,255,.12);
  }
  .hero-proof div + div { padding-left: 1rem; border-left: 1px solid rgba(255,255,255,.12); }
  .hero-proof dd { margin: 0; }
  .card-art { border-radius: 24px; }
  .detail-grid { gap: 10px; }
  .detail-card { border-radius: 20px; }
  .plan-card { border-radius: 22px; }
  .whatsapp-float { right: 14px; bottom: 14px; }
}


/* Colección Aurennia · demos Figma/Lovable */
.collection-grid-five{grid-template-columns:repeat(3,1fr)}
.collection-grid-five .collection-card{display:block}
.collection-grid-five .card-copy b{display:inline-block;margin-top:14px;color:var(--plum);font-size:.72rem;letter-spacing:.04em}
.baptism-card .card-art{background:radial-gradient(circle at 50% 35%,#f8fbf6,transparent 28%),linear-gradient(145deg,#dbe7df,#edf3ee)}
.baptism-card .plus{color:#496d5f;font-size:7rem}
.birthday-card .card-art{color:#fff;background:radial-gradient(circle at 50% 38%,#a6457a,transparent 28%),linear-gradient(145deg,#2b1737,#6c2c69)}
.birthday-card .plus{color:#ffd56f;font-size:7rem}
.baby-card .card-art{background:radial-gradient(circle at 50% 35%,#fffaf4,transparent 28%),linear-gradient(145deg,#dce9e4,#f7f4ee)}
.baby-card .plus{color:#67887c;font-size:7rem}
.baby-card .halo{border-color:rgba(88,117,107,.32);box-shadow:0 0 0 35px rgba(255,255,255,.13),0 0 0 70px rgba(88,117,107,.06)}
@media(max-width:980px){.collection-grid-five{grid-template-columns:repeat(2,1fr)}.collection-grid-five .collection-card:last-child{grid-column:auto;width:100%}}
@media(max-width:680px){.collection-grid-five{grid-template-columns:1fr}}


/* ==========================================================
   AURENNIA · PREMIUM COMMERCE REFRESH · 2026-10
   Visual storytelling + guided conversion + smart guest demo
   ========================================================== */
:root{
  --aur-ink:#1b0d16;
  --aur-plum:#4c1838;
  --aur-wine:#6c244d;
  --aur-gold:#c99b55;
  --aur-gold-soft:#f0d6a1;
  --aur-paper:#fffaf6;
  --aur-cream:#f6efe9;
  --aur-line:rgba(57,28,44,.14);
  --aur-muted:#75656d;
}
body{background:var(--aur-paper);color:var(--aur-ink)}
.shell{width:min(1220px,calc(100% - 48px));margin-inline:auto}
.site-header{background:rgba(255,250,246,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hero{
  min-height:calc(100svh - 82px);
  background-image:url("assets/aurennia-hero-editorial-v2.webp");
  background-size:cover;
  background-position:center;
  isolation:isolate
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(circle at 72% 30%,rgba(228,183,111,.16),transparent 25%),
    linear-gradient(90deg,rgba(16,5,12,.98) 0%,rgba(34,8,26,.94) 32%,rgba(52,16,38,.67) 54%,rgba(17,6,13,.13) 80%),
    linear-gradient(180deg,rgba(17,5,13,.1),transparent 55%,rgba(17,5,13,.62))
}
.hero h1{font-size:clamp(4.15rem,7.1vw,7.4rem);line-height:.89;letter-spacing:-.052em}
.hero h1 em{color:var(--aur-gold-soft)}
.hero-lede{max-width:690px}
.hero-proof{max-width:650px}
.hero-proof dt{font-family:var(--serif);font-size:1.45rem;color:#fff}
.hero-proof dd{color:rgba(255,255,255,.58);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}
.aurennia-intro{padding-block:clamp(90px,10vw,145px);display:grid;grid-template-columns:1.15fr .85fr;gap:9vw;align-items:end}
.aurennia-intro h2,.lookbook h2,.event-catalog h2,.finder h2,.smart-demo h2,.plans-v2 h2,.process-v2 h2{
  margin:.5rem 0 0;font-family:var(--serif);font-weight:400;line-height:.94;letter-spacing:-.045em;font-size:clamp(3.25rem,6vw,6rem)
}
.aurennia-intro h2 em,.lookbook h2 em,.plans-v2 h2 em,.process-v2 h2 em{color:var(--aur-wine);font-weight:400}
.aurennia-intro>p,.lookbook-head>p,.plans-v2-head>p{margin:0;color:var(--aur-muted);font-size:1rem;line-height:1.8;max-width:520px}

.event-catalog{padding-block:clamp(95px,10vw,150px);background:#1d0b17;color:#fff;overflow:hidden}
.event-catalog .section-heading{align-items:end}
.event-catalog .section-heading>p{color:rgba(255,255,255,.58)}
.event-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin-top:64px}
.event-card{grid-column:span 6;background:#fff;color:var(--aur-ink);border-radius:28px;overflow:hidden;display:block;box-shadow:0 25px 65px rgba(0,0,0,.18);transition:transform .35s ease,box-shadow .35s ease}
.event-card:nth-child(3),.event-card:nth-child(4),.event-card:nth-child(5){grid-column:span 4}
.event-card:hover{transform:translateY(-7px);box-shadow:0 30px 90px rgba(0,0,0,.28)}
.event-media{height:clamp(360px,44vw,560px);position:relative;overflow:hidden;background:#eee}
.event-card:nth-child(n+3) .event-media{height:390px}
.event-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.event-card:hover .event-media img{transform:scale(1.035)}
.event-art{background-size:cover;background-position:center}
.baptism-photo{background-image:linear-gradient(180deg,transparent 52%,rgba(24,33,27,.46)),url("https://images.unsplash.com/photo-1762399940468-772f16c9740e?auto=format&fit=crop&w=1400&q=84")}
.birthday-photo{background-image:linear-gradient(180deg,transparent 52%,rgba(31,11,28,.42)),url("https://images.unsplash.com/photo-1772615071658-f242bbe0a68a?auto=format&fit=crop&w=1400&q=84")}
.event-tag{position:absolute;left:20px;bottom:20px;padding:9px 13px;border-radius:99px;color:#fff;background:rgba(20,9,15,.62);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(12px);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase}
.event-copy{padding:28px 30px 31px;display:flex;justify-content:space-between;gap:24px;align-items:flex-end}
.event-copy small{display:block;color:var(--aur-gold);font-size:.68rem;letter-spacing:.14em}
.event-copy h3{margin:5px 0 7px;font-family:var(--serif);font-size:2.2rem;font-weight:500}
.event-copy p{max-width:500px;margin:0;color:var(--aur-muted);font-size:.86rem;line-height:1.65}
.event-copy>b{white-space:nowrap;font-size:.75rem;letter-spacing:.04em}

.lookbook{padding-block:clamp(100px,10vw,150px)}
.lookbook-head{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end;margin-bottom:48px}
.style-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.style-card{appearance:none;border:1px solid var(--aur-line);background:#fff;text-align:left;padding:0;overflow:hidden;border-radius:22px;cursor:pointer;color:inherit;box-shadow:0 16px 45px rgba(36,14,27,.055);transition:.3s ease}
.style-card:hover{transform:translateY(-6px);border-color:rgba(201,155,85,.48);box-shadow:0 24px 60px rgba(36,14,27,.1)}
.style-art{display:block;width:100%;height:270px;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.style-card:hover .style-art{transform:scale(1.035)}
.style-card strong,.style-card small,.style-card i{display:block;margin-inline:19px}
.style-card strong{margin-top:18px;font-family:var(--serif);font-size:1.52rem;font-weight:500}
.style-card small{margin-top:2px;color:var(--aur-muted);font-size:.68rem}
.style-card i{margin-top:18px;margin-bottom:19px;color:var(--aur-wine);font-size:.7rem;font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.lookbook-note{margin:26px 0 0;color:var(--aur-muted);font-size:.78rem;text-align:center}
.lookbook-modal{position:fixed;inset:0;z-index:100;background:rgba(14,6,10,.94);padding:clamp(24px,5vw,70px);overflow:auto}
.lookbook-modal[hidden]{display:none}
.lookbook-close{position:fixed;right:26px;top:22px;z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.25);color:#fff;font-size:1.6rem;cursor:pointer}
.lookbook-pages{width:min(980px,100%);margin:auto;display:grid;gap:18px}
.lb-page{min-height:min(78vh,760px);border-radius:28px;padding:clamp(30px,6vw,70px);display:flex;align-items:flex-end;box-shadow:0 25px 80px rgba(0,0,0,.3);color:#fff;position:relative;overflow:hidden;background-image:var(--lb-image);background-size:cover;background-position:center}
.lb-page::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.62))}
.lb-page>div{position:relative;z-index:1;max-width:630px}
.lb-page h3{font-family:var(--serif);font-size:clamp(3rem,7vw,6.2rem);font-weight:400;line-height:.9;margin:0 0 15px}
.lb-page p{margin:0;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.7}
.lb-page .eyebrow{margin-bottom:18px}

.finder{padding-block:clamp(105px,11vw,160px);background:#26101f;color:#fff}
.finder-shell{display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;align-items:start}
.finder-copy{position:sticky;top:130px}
.finder-copy>p:last-child{max-width:500px;color:rgba(255,255,255,.62);line-height:1.8}
.finder h2 em,.smart-demo h2 em{color:var(--aur-gold-soft);font-weight:400}
.finder-card{background:#fff;color:var(--aur-ink);border-radius:30px;padding:clamp(26px,5vw,52px);min-height:500px;box-shadow:0 30px 90px rgba(0,0,0,.24)}
.finder-progress{display:flex;gap:7px;margin-bottom:45px}
.finder-progress span{height:4px;flex:1;border-radius:99px;background:#ece5e8;transition:.3s}
.finder-progress span.active{background:var(--aur-gold)}
.finder-step{display:none}
.finder-step.active{display:block}
.finder-step>small{color:var(--aur-gold);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}
.finder-step h3,.finder-result h3{font-family:var(--serif);font-size:clamp(2.5rem,4vw,4rem);font-weight:500;line-height:1;margin:12px 0 30px}
.choices{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.choices button{min-height:76px;border:1px solid var(--aur-line);border-radius:16px;background:#fff;color:var(--aur-ink);font:600 .84rem var(--sans);cursor:pointer;padding:18px;text-align:left;transition:.2s}
.choices button:hover{border-color:var(--aur-gold);background:#fffaf1}
.choices.vertical{grid-template-columns:1fr}
.choices.vertical button{display:grid;gap:4px}
.choices.vertical b{font-size:.92rem}
.choices.vertical span{font-weight:400;color:var(--aur-muted);font-size:.77rem}
.check-choices{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:28px}
.check-choices label{display:flex;gap:10px;align-items:center;padding:14px;border:1px solid var(--aur-line);border-radius:14px;font-size:.78rem;cursor:pointer}
.check-choices input{accent-color:var(--aur-wine)}
.finder-result p:not(.eyebrow){color:var(--aur-muted);line-height:1.75}
.finder-result-actions{display:flex;gap:16px;align-items:center;margin-top:28px}
.text-button{border:0;background:none;color:var(--aur-muted);text-decoration:underline;cursor:pointer}

.smart-demo{padding-block:clamp(110px,11vw,170px);background:#140711;color:#fff;overflow:hidden}
.smart-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}
.smart-copy>p:not(.eyebrow){color:rgba(255,255,255,.62);line-height:1.8;max-width:590px}
.smart-list{list-style:none;margin:38px 0;padding:0;border-top:1px solid rgba(255,255,255,.13)}
.smart-list li{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.13)}
.smart-list li>span{color:var(--aur-gold);font-size:.67rem;letter-spacing:.1em}
.smart-list b{font-family:var(--serif);font-size:1.25rem;font-weight:500}
.smart-list p{margin:4px 0 0;color:rgba(255,255,255,.52);font-size:.78rem;line-height:1.55}
.product-stage{min-height:690px;position:relative}
.phone-v2{width:285px;position:absolute;left:0;top:0;z-index:2;padding:9px;border:1px solid rgba(255,255,255,.28);border-radius:39px;background:#090509;box-shadow:0 38px 90px rgba(0,0,0,.45);transform:rotate(-4deg)}
.phone-v2-screen{height:590px;overflow:hidden;border-radius:31px;position:relative;background:#2b1722}
.phone-v2-screen img{width:100%;height:100%;object-fit:cover}
.phone-personal{position:absolute;left:17px;right:17px;bottom:18px;padding:15px;border-radius:18px;background:rgba(25,8,19,.76);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(12px)}
.phone-personal small,.phone-personal b,.phone-personal span{display:block}
.phone-personal small{font-size:.52rem;letter-spacing:.14em;color:var(--aur-gold-soft)}
.phone-personal b{font-family:var(--serif);font-size:1.3rem;margin:3px 0}
.phone-personal span{font-size:.68rem;color:rgba(255,255,255,.68)}
.admin-preview{position:absolute;right:0;top:120px;width:min(465px,72%);padding:22px;border-radius:25px;background:#fff;color:var(--aur-ink);box-shadow:0 35px 100px rgba(0,0,0,.34);transform:rotate(2deg)}
.admin-preview-head{display:flex;justify-content:space-between;align-items:center;font-size:.77rem;font-weight:700}
.admin-preview-head i{font-style:normal;color:#39765a;font-size:.62rem}
.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}
.admin-stats div{padding:13px;background:#f7f1f4;border-radius:13px}
.admin-stats b,.admin-stats span{display:block}
.admin-stats b{font-family:var(--serif);font-size:1.5rem}
.admin-stats span{font-size:.54rem;color:var(--aur-muted);text-transform:uppercase}
.guest-row{display:grid;grid-template-columns:35px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--aur-line)}
.avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#efe2e9;font-size:.62rem;font-weight:700}
.guest-row p{margin:0}
.guest-row b,.guest-row small{display:block}
.guest-row b{font-size:.7rem}
.guest-row small{color:var(--aur-muted);font-size:.56rem;margin-top:2px}
.guest-row em{font-style:normal;color:#327354;font-size:.55rem;background:#e8f5ee;padding:5px 7px;border-radius:99px}
.guest-row em.pending{color:#8a6426;background:#faf1d9}

.plans-v2{padding-block:clamp(105px,10vw,155px);background:var(--aur-cream)}
.plans-v2-head{display:grid;grid-template-columns:1fr .65fr;gap:7vw;align-items:end;margin-bottom:55px}
.plan-grid-v2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.plan-v2{position:relative;padding:34px;border:1px solid var(--aur-line);border-radius:25px;background:#fff;box-shadow:0 16px 50px rgba(40,17,31,.045)}
.plan-v2.featured{border-color:rgba(201,155,85,.72);box-shadow:0 24px 70px rgba(63,34,48,.11)}
.plan-v2.signature{background:#24101d;color:#fff}
.plan-label{display:flex;gap:12px;align-items:center;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em}
.plan-label span{color:var(--aur-gold)}
.plan-v2 h3{min-height:72px;margin:26px 0 16px;font-family:var(--serif);font-weight:500;font-size:2rem;line-height:1.06}
.price{display:flex;align-items:baseline;gap:8px;margin:13px 0}
.price small{color:var(--aur-muted);font-size:.68rem}
.price strong{font-family:var(--serif);font-size:3.15rem;font-weight:500;line-height:1}
.price span{font-size:.66rem;color:var(--aur-muted)}
.signature .price small,.signature .price span,.signature .plan-desc,.signature ul{color:rgba(255,255,255,.62)}
.plan-desc{min-height:58px;color:var(--aur-muted);font-size:.8rem;line-height:1.6}
.plan-v2 ul{list-style:none;padding:20px 0;margin:18px 0;border-top:1px solid var(--aur-line);color:#54464e}
.signature ul{border-color:rgba(255,255,255,.13)}
.plan-v2 li{position:relative;padding:8px 0 8px 20px;font-size:.76rem}
.plan-v2 li::before{content:"✓";position:absolute;left:0;color:var(--aur-gold);font-weight:800}
.plan-v2 .button{width:100%;justify-content:center}
.recommended{position:absolute;right:22px;top:22px;padding:7px 10px;border-radius:99px;background:var(--aur-ink);color:#fff;font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}
.payment-note{margin-top:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid var(--aur-line);border-radius:20px;overflow:hidden;background:var(--aur-line)}
.payment-note div{padding:22px;background:#fff}
.payment-note strong,.payment-note span{display:block}
.payment-note strong{font-family:var(--serif);font-size:1.08rem}
.payment-note span{margin-top:4px;color:var(--aur-muted);font-size:.68rem;line-height:1.55}

.process-v2{padding-block:clamp(100px,10vw,150px)}
.steps-v2{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:65px 0 0;border-top:1px solid var(--aur-line)}
.steps-v2 li{padding:30px 25px 0;border-left:1px solid var(--aur-line)}
.steps-v2 li:first-child{border-left:0;padding-left:0}
.steps-v2>li>span{color:var(--aur-gold);font-size:.68rem;letter-spacing:.14em}
.steps-v2 h3{font-family:var(--serif);font-size:1.6rem;font-weight:500;line-height:1.08;margin:35px 0 10px}
.steps-v2 p{color:var(--aur-muted);font-size:.79rem;line-height:1.65;margin:0}

.faq{padding-block:clamp(90px,10vw,145px)}
.final-cta{background:
  radial-gradient(circle at 50% 12%,rgba(205,157,84,.16),transparent 25%),
  linear-gradient(145deg,#2c1022,#120710)}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:45}
.button.plan{border-color:var(--aur-line);background:transparent;color:inherit}
.button.plan:hover{background:var(--aur-gold-soft);color:var(--aur-ink)}
.signature .button.plan{border-color:rgba(255,255,255,.28)}

@media(max-width:1020px){
  .aurennia-intro,.lookbook-head,.finder-shell,.smart-grid,.plans-v2-head{grid-template-columns:1fr;gap:35px}
  .finder-copy{position:static}
  .event-card:nth-child(n){grid-column:span 6}
  .style-strip{grid-template-columns:repeat(2,1fr)}
  .product-stage{width:min(700px,100%);margin:auto}
  .plan-grid-v2{grid-template-columns:1fr}
  .plan-v2{width:min(720px,100%);margin:auto}
  .steps-v2{grid-template-columns:repeat(2,1fr)}
  .steps-v2 li:nth-child(3){border-left:0}
  .payment-note{grid-template-columns:1fr}
}
@media(max-width:680px){
  .shell{width:min(100% - 34px,1220px)}
  .hero h1{font-size:clamp(3.35rem,15.5vw,5.2rem)}
  .aurennia-intro{padding-block:80px}
  .event-catalog{padding-block:82px}
  .event-grid{grid-template-columns:1fr;margin-top:40px}
  .event-card:nth-child(n){grid-column:auto}
  .event-media,.event-card:nth-child(n) .event-media{height:430px}
  .event-copy{padding:22px;display:block}
  .event-copy>b{display:block;margin-top:20px}
  .lookbook{padding-block:82px}
  .style-strip{grid-template-columns:1fr 1fr;gap:9px}
  .style-art{height:190px}
  .style-card strong{font-size:1.2rem;margin-inline:13px}
  .style-card small,.style-card i{margin-inline:13px}
  .style-card i{font-size:.58rem}
  .finder{padding-block:82px}
  .finder-card{padding:25px 18px;min-height:480px}
  .choices,.check-choices{grid-template-columns:1fr}
  .finder-result-actions{align-items:stretch;flex-direction:column}
  .smart-demo{padding-block:85px}
  .product-stage{min-height:590px}
  .phone-v2{width:225px}
  .phone-v2-screen{height:480px}
  .admin-preview{top:150px;width:75%;padding:14px}
  .admin-stats{gap:4px}
  .admin-stats div{padding:9px}
  .guest-row{grid-template-columns:30px 1fr}
  .guest-row em{grid-column:2}
  .plan-v2{padding:28px 21px}
  .plan-v2 h3{min-height:0}
  .price strong{font-size:2.7rem}
  .steps-v2{grid-template-columns:1fr;border-top:0}
  .steps-v2 li,.steps-v2 li:first-child,.steps-v2 li:nth-child(3){padding:25px 0;border-left:0;border-top:1px solid var(--aur-line)}
  .steps-v2 h3{margin-top:18px}
  .lb-page{min-height:66vh}
}


/* === Commercial guardrails + legal links === */
.addons-v2{margin-top:28px;padding:34px;border:1px solid var(--aur-line);border-radius:24px;background:#fff;display:grid;grid-template-columns:.72fr 1.28fr;gap:42px}
.addons-v2-copy h3{font-family:var(--serif);font-size:2rem;line-height:1.05;font-weight:500;margin:10px 0 12px}
.addons-v2-copy>p:last-child{margin:0;color:var(--aur-muted);font-size:.78rem;line-height:1.65}
.addons-v2-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.addons-v2-grid div{padding:12px 0;border-bottom:1px solid var(--aur-line)}
.addons-v2-grid b,.addons-v2-grid span{display:block}
.addons-v2-grid b{font-size:.76rem}
.addons-v2-grid span{margin-top:3px;color:var(--aur-muted);font-size:.66rem}
.pricing-disclaimer{max-width:900px;margin:20px auto 0;text-align:center;color:var(--aur-muted);font-size:.68rem;line-height:1.6}
footer a{text-decoration-thickness:1px;text-underline-offset:3px}
@media(max-width:760px){
  .addons-v2{grid-template-columns:1fr;padding:25px 20px;gap:20px}
  .addons-v2-grid{grid-template-columns:1fr}
}


/* === Plan contrast fixes from screenshot QA === */
.plan-v2.featured li{color:#54464e}
.plan-v2.featured .price small,.plan-v2.featured .price span{color:var(--aur-muted)}
.plan-v2.signature ul{color:rgba(255,255,255,.72)}
.plan-v2.signature li{color:rgba(255,255,255,.72)}

/* Premium audit: clearer hierarchy, accessible actions and compact mobile rhythm. */
.event-copy small,.finder-step>small,.plan-label span,.steps-v2>li>span{color:#85551f}
.event-catalog .event-copy small,.finder .finder-step>small{color:#85551f}
.signature .plan-label span{color:var(--aur-gold-soft)}
.site-header{height:76px;width:min(1220px,calc(100% - 32px));margin:14px auto 0;padding:0 20px;border:1px solid rgba(57,28,44,.1);border-radius:24px;box-shadow:0 14px 42px rgba(29,17,24,.08)}
.hero{min-height:calc(100dvh - 90px);margin-top:-90px;padding-top:90px}
.hero h1,.aurennia-intro h2,.lookbook h2,.event-catalog h2,.finder h2,.smart-demo h2,.plans-v2 h2,.process-v2 h2{text-wrap:balance}
.plan-jump{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:18px;border:1px solid var(--aur-line);border-radius:20px;overflow:hidden;background:var(--aur-line)}
.plan-jump a{min-height:76px;padding:15px 18px;display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-content:center;background:#fff;transition:background .25s cubic-bezier(.2,.8,.2,1)}
.plan-jump a:hover{background:#fff7e9}.plan-jump span{grid-row:1/3;color:#85551f;font:500 1.2rem var(--serif)}
.plan-jump b{font-size:.76rem}.plan-jump small{color:var(--aur-muted);font-size:.64rem}.plan-v2{scroll-margin-top:110px}
.footer-links a{min-height:44px;display:inline-flex;align-items:center;width:fit-content}
.footer-demo-note{max-width:390px;font:400 .76rem/1.6 var(--sans)!important;color:rgba(255,255,255,.62)!important}
.style-card,.event-card,.button{transition-timing-function:cubic-bezier(.2,.8,.2,1)}
.section-heading.compact h2 em,.faq-title h2 em{color:#986523}
.footer-bottom{color:rgba(255,255,255,.68)}
.whatsapp-float span{color:#102216}
main>section:not(.hero),main+footer{content-visibility:auto;contain-intrinsic-size:auto 1000px}

@media(max-width:980px){
  .site-header{height:70px}.mobile-nav{top:98px;width:calc(100% - 32px);left:16px;border:1px solid var(--line);border-radius:20px}
  .hero{min-height:calc(100dvh - 84px);margin-top:-84px;padding-top:84px}
}
@media(max-width:680px){
  .site-header{height:64px;margin-top:10px;padding-inline:14px;border-radius:18px}.brand img{height:44px}
  .mobile-nav{top:82px}.hero{min-height:100dvh;margin-top:-74px;padding-top:74px}
  .style-strip{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(82vw,330px);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 17px 18px;margin-inline:-17px;scrollbar-width:thin}
  .style-card{scroll-snap-align:start}.style-art{height:250px}
  .plan-jump{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.plan-jump a{min-width:180px;scroll-snap-align:start}
  .event-media,.event-card:nth-child(n) .event-media{height:min(118vw,470px)}
}
