:root{
  --ink:#172725;
  --ink-soft:#34423f;
  --muted:#6f7773;
  --cream:#fbf7f1;
  --paper:#fffdf9;
  --white:#ffffff;
  --blush:#f5ece6;
  --sage:#edf0e9;
  --gold:#b4865b;
  --gold-deep:#8e6847;
  --gold-pale:#e8d7c4;
  --line:#e7dfd6;
  --line-dark:#d6cbbf;
  --shadow-sm:0 12px 34px rgba(30,42,39,.07);
  --shadow:0 24px 70px rgba(30,42,39,.11);
  --shadow-lg:0 34px 90px rgba(30,42,39,.16);
  --radius:24px;
  --radius-lg:36px;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.wrap{width:min(calc(100% - 44px),var(--max));margin-inline:auto}
.skip{position:absolute;left:-999px;top:0}
.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;z-index:1000;border-radius:10px;box-shadow:var(--shadow-sm)}

/* Header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,253,249,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(180,134,91,.16)}
.site-header:before{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent 0%,var(--gold-pale) 18%,var(--gold) 50%,var(--gold-pale) 82%,transparent 100%)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:26px}
.brand{text-decoration:none;display:flex;align-items:center;gap:12px;min-width:max-content}
.brand-mark{width:44px;height:44px;display:grid;place-items:center;color:var(--gold-deep);font:400 34px/1 Georgia,"Times New Roman",serif;position:relative}
.brand-mark:before{content:"♡";position:absolute;inset:0;display:grid;place-items:center}
.brand-mark{font-size:0}
.brand strong{font:500 27px/1 Georgia,"Times New Roman",serif;letter-spacing:-.5px;color:var(--ink)}
.brand small{display:block;margin-top:5px;color:var(--gold-deep);font-size:9px;text-transform:uppercase;letter-spacing:2.4px}
.nav-links{display:flex;align-items:center;gap:25px}
.nav-links a{text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.02em;position:relative}
.nav-links a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:right .2s ease}
.nav-links a:not(.nav-cta):hover:after{right:0}
.nav-links a:hover{color:var(--gold-deep)}
.nav-cta{background:linear-gradient(135deg,#c09469,#a87850);color:#fff!important;padding:12px 18px;border-radius:999px;box-shadow:0 8px 22px rgba(142,104,71,.22)}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;color:var(--ink);font-weight:800}

/* Typography */
.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.2px;text-transform:uppercase;color:var(--gold-deep)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin:0 0 18px;color:var(--ink)}
h1{font-size:clamp(46px,6.4vw,82px);font-weight:400;letter-spacing:-2.1px}
h2{font-size:clamp(32px,4.5vw,54px);font-weight:400;letter-spacing:-1px}
h3{font-size:25px;font-weight:500;letter-spacing:-.25px}
.lead{font-size:19px;line-height:1.72;color:#4f5a56;max-width:720px}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--gold-deep);font-weight:800;text-decoration:none;font-size:13px;letter-spacing:.03em;text-transform:uppercase}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.kicker{color:var(--gold-deep);font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:1.8px}

/* Buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;padding:14px 20px;border-radius:999px;border:1px solid var(--ink);font-weight:800;font-size:13px;letter-spacing:.02em;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--ink);color:#fff;box-shadow:0 12px 28px rgba(23,39,37,.18)}
.btn.secondary{background:rgba(255,255,255,.72);border-color:var(--gold);color:var(--gold-deep)}
.btn.gold{background:linear-gradient(135deg,#c09469,#a87850);border-color:transparent;color:#fff;box-shadow:0 12px 28px rgba(142,104,71,.20)}

/* Premium homepage */
.home-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#fffaf4 0%,#f9eee4 50%,#e9eee8 100%);padding:58px 0 0}
.home-hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(180,134,91,.19);border-radius:50%;left:-300px;top:-275px}
.home-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(180,134,91,.16);border-radius:50%;right:-230px;bottom:-230px}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:66px;position:relative;z-index:1}
.home-hero-copy{padding:34px 0 68px}
.home-hero h1{max-width:700px;font-size:clamp(58px,7.7vw,94px)}
.home-hero .lead{max-width:620px}
.hero-photo-wrap{position:relative;align-self:end;min-height:560px;display:flex;align-items:flex-end;justify-content:center}
.hero-photo{width:min(100%,590px);height:560px;object-fit:cover;object-position:center top;border-radius:240px 240px 28px 28px;box-shadow:var(--shadow-lg);border:10px solid rgba(255,255,255,.62)}
.hero-photo-wrap:before{content:"";position:absolute;width:80%;height:78%;border:1px solid rgba(180,134,91,.5);border-radius:240px 240px 30px 30px;transform:translate(28px,-28px);z-index:-1}
.hero-note{position:absolute;right:-8px;bottom:54px;background:rgba(255,253,249,.93);backdrop-filter:blur(12px);border:1px solid rgba(180,134,91,.32);box-shadow:var(--shadow-sm);border-radius:18px;padding:16px 18px;max-width:210px;font:italic 20px/1.35 Georgia,serif;color:var(--gold-deep)}
.trust-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}
.pill{background:rgba(255,255,255,.72);border:1px solid rgba(180,134,91,.22);border-radius:999px;padding:8px 12px;color:#5f665f;font-size:12px}
.quick-tools{background:rgba(255,253,249,.96);border-top:1px solid rgba(180,134,91,.15);border-bottom:1px solid rgba(180,134,91,.15);position:relative;z-index:2}
.quick-tools-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.quick-tool{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;text-decoration:none;padding:20px 10px;border-right:1px solid var(--line);font-size:11px;font-weight:700;transition:background .2s ease,color .2s ease}
.quick-tool:first-child{border-left:1px solid var(--line)}
.quick-tool:hover{background:#fff;color:var(--gold-deep)}
.quick-tool-icon{font:400 27px/1 Georgia,serif;color:var(--gold-deep)}

.editorial-section{padding:82px 0;background:#fffdf9}
.editorial-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:center}
.editorial-copy{max-width:500px}
.editorial-copy .rule{width:52px;height:1px;background:var(--gold);margin:25px 0}
.editorial-copy p{color:var(--muted);font-size:16px}
.editorial-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.editorial-card{position:relative;overflow:hidden;min-height:430px;border-radius:4px 4px 20px 20px;box-shadow:var(--shadow-sm);text-decoration:none;background:#ddd}
.editorial-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.editorial-card:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(14,28,25,.86))}
.editorial-card:hover img{transform:scale(1.035)}
.editorial-card-copy{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#fff}
.editorial-card h3{color:#fff;font-size:27px;margin-bottom:8px}
.editorial-card small{display:block;text-transform:uppercase;letter-spacing:1.4px;font-size:9px;line-height:1.5;color:rgba(255,255,255,.82)}

.section{padding:78px 0}
.section.alt{background:#fff}
.section.sage{background:var(--sage)}
.section.blush{background:var(--blush)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:38px;margin-bottom:34px}
.section-head p{max-width:650px;color:var(--muted);margin:0}
.grid{display:grid;gap:20px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.four{grid-template-columns:repeat(4,1fr)}

.popular-tools{position:relative;background:linear-gradient(110deg,#f7eee4 0%,#fcf8f2 48%,#edf0e9 100%);overflow:hidden}
.popular-tools:after{content:"♡";position:absolute;right:4%;top:10px;font:400 160px/1 Georgia,serif;color:rgba(180,134,91,.07);transform:rotate(-8deg)}
.popular-tools .section-head{position:relative;z-index:1}
.tool-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;position:relative;z-index:1}
.tool-feature{background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.95);border-radius:18px;padding:28px 22px;text-align:center;text-decoration:none;box-shadow:0 8px 28px rgba(44,50,46,.04);transition:transform .22s ease,box-shadow .22s ease}
.tool-feature:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.tool-feature-icon{width:58px;height:58px;margin:0 auto 18px;border:1px solid var(--gold-pale);border-radius:50%;display:grid;place-items:center;font:400 25px Georgia,serif;color:var(--gold-deep);background:#fffaf5}
.tool-feature h3{font-size:23px}
.tool-feature p{color:var(--muted);font-size:14px;min-height:48px}

.destination-section{background:#fffdf9}
.destination-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.destination-card{position:relative;min-height:220px;border-radius:4px 4px 18px 18px;overflow:hidden;text-decoration:none;box-shadow:var(--shadow-sm)}
.destination-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .4s ease}
.destination-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(15,28,26,.82))}
.destination-card span{position:absolute;z-index:2;left:18px;bottom:15px;color:#fff;font:500 22px Georgia,serif}
.destination-card:hover img{transform:scale(1.04)}

.culture-banner{background:#f8f2eb;padding:0;overflow:hidden}
.culture-grid{display:grid;grid-template-columns:.82fr 1.18fr;align-items:stretch}
.culture-photo{min-height:390px;width:100%;height:100%;object-fit:cover}
.culture-copy{padding:58px 7vw 58px 54px;display:flex;flex-direction:column;justify-content:center;position:relative}
.culture-copy:after{content:"Different traditions.\A The same beautiful love.";white-space:pre;position:absolute;right:7%;top:50px;font:italic 22px/1.5 Georgia,serif;color:rgba(142,104,71,.75);transform:rotate(-4deg)}
.culture-copy p{max-width:640px;color:var(--muted)}

/* Generic cards */
.card{background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:var(--radius);padding:27px;box-shadow:0 8px 30px rgba(45,55,49,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;text-decoration:none}
a.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--gold-pale)}
.card.soft{background:var(--sage)}
.card.rose{background:#f7eeea}
.card a{text-decoration:none}
.card p{color:var(--muted);margin-bottom:0}
.icon{width:54px;height:54px;border-radius:50%;background:#f6ede5;border:1px solid var(--gold-pale);display:grid;place-items:center;margin-bottom:18px;font-weight:900;color:var(--gold-deep)}
.feature-card{overflow:hidden;padding:0;background:#fff}
.feature-card img{aspect-ratio:3/2;object-fit:cover;background:var(--sage)}
.feature-card .inside{padding:25px}

/* Inner page hero */
.breadcrumbs{padding-top:22px;font-size:12px;color:var(--muted);letter-spacing:.02em}
.breadcrumbs a{text-decoration:none}
.page-hero{padding:42px 0 58px;background:radial-gradient(circle at 92% 10%,rgba(221,202,181,.3),transparent 24%),linear-gradient(120deg,#fffaf4,#f6eee7 52%,#edf0e9)}
.page-hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.page-hero h1{font-size:clamp(44px,5.8vw,72px);max-width:780px}
.page-hero .lead{max-width:680px}
.page-hero img{width:100%;height:390px;object-fit:cover;border-radius:210px 210px 26px 26px;border:8px solid rgba(255,255,255,.66);box-shadow:var(--shadow);background:#fff}

/* Prose */
.prose{max-width:850px}
.prose p,.prose li{color:#4f5955;font-size:16.5px}
.prose h2{margin-top:52px}
.prose h3{margin-top:34px}
.prose ul{padding-left:22px}
.prose a{color:var(--gold-deep);text-decoration-thickness:1px;text-underline-offset:3px}
.callout{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);padding:22px 24px;border-radius:14px;margin:30px 0;box-shadow:var(--shadow-sm)}
.quote{font:italic 29px/1.5 Georgia,serif;color:#4a554e;border-left:2px solid var(--gold);padding-left:24px;margin:34px 0}
.tag-cloud{display:flex;flex-wrap:wrap;gap:9px}
.tag-cloud a{background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:999px;text-decoration:none;font-size:13px}

/* Tools */
.tool-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:25px;align-items:start}
.tool-panel{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow-sm)}
.tool-panel.sticky{position:sticky;top:108px;background:linear-gradient(160deg,#fff,#fbf4eb)}
.tool-panel h2{font-size:34px}
.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1/-1}
.field label{font-weight:800;font-size:13px;letter-spacing:.01em;color:#3f4945}
.field small{color:var(--muted)}
input,select,textarea{width:100%;border:1px solid var(--line-dark);background:#fffdfb;border-radius:12px;padding:12px 13px;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px rgba(180,134,91,.12)}
.summary-total{font:500 clamp(38px,5vw,58px) Georgia,serif;margin:7px 0;color:var(--ink)}
.summary-list{list-style:none;padding:0;margin:20px 0}
.summary-list li{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}
.summary-list span:last-child{font-weight:800}
.tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.tool-actions button{border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:999px;padding:11px 15px;font-weight:800;font-size:13px}
.tool-actions button.secondary{background:#fff;color:var(--ink);border-color:var(--line-dark)}
.expense-row,.guest-row{display:grid;grid-template-columns:1.25fr .65fr .65fr auto;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid var(--line)}
.expense-row button,.guest-row button{border:0;background:#f4ebe6;color:#744d35;width:40px;height:40px;border-radius:50%;font-weight:900}
.budget-bar{height:10px;background:#eee7df;border-radius:999px;overflow:hidden}
.budget-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),#d0a679);transition:.2s}
.table-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.table-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 7px 24px rgba(45,55,49,.035)}
.table-card.over{border-color:#b64a4a;background:#fff6f5}
.guest-chip{display:flex;justify-content:space-between;gap:10px;align-items:center;background:var(--sage);border-radius:999px;padding:8px 12px;margin-top:8px}
.guest-chip button{border:0;background:transparent;color:#7a4d38;font-weight:900}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.toolbar button{border:1px solid var(--line);background:#fff;padding:10px 13px;border-radius:999px;font-weight:800}
.notice{font-size:13px;color:var(--muted)}
.checklist-group{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;margin:18px 0;box-shadow:0 7px 25px rgba(45,55,49,.035)}
.check-item{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #eee9e3}
.check-item:last-child{border-bottom:0}
.check-item input{width:auto;margin-top:6px}
.timeline{border-left:1px solid var(--gold);margin-left:12px;padding-left:29px}
.timeline-item{position:relative;margin:0 0 30px}
.timeline-item:before{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--paper);border:3px solid var(--gold);left:-36px;top:7px}
.mini-stat strong{display:block;font:500 34px Georgia,serif}
.mini-stat span{color:var(--muted);font-size:13px}
.empty{color:var(--muted);padding:18px;border:1px dashed var(--line);border-radius:14px;text-align:center}

/* Helpers replacing former inline styles */
.mt-14{margin-top:14px}.mt-20{margin-top:20px}.mt-22{margin-top:22px}.mt-24{margin-top:24px}.mt-28{margin-top:28px}.mt-34{margin-top:34px}.mt-48{margin-top:48px}.mb-24{margin-bottom:24px}.max-320{max-width:320px}.max-760{max-width:760px}

/* Footer */
.footer{background:#172724;color:#eff2ee;padding:60px 0 24px;position:relative}
.footer:before{content:"";display:block;position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:40px}
.footer .brand strong{color:#fff}
.footer .brand small{color:#d6b894}
.footer .brand-mark{color:#d6b894}
.footer h3{font-size:18px;color:#fff}
.footer p,.footer a{color:#c5cfca}
.footer a{text-decoration:none}
.footer a:hover{color:#fff}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:8px 0}
.fine{border-top:1px solid #354642;margin-top:38px;padding-top:20px;color:#9faaa5;font-size:12px}
.print-only{display:none}

@media(max-width:1050px){
  .nav-links{gap:16px}.home-hero-grid{grid-template-columns:1fr .9fr;gap:38px}.hero-photo-wrap{min-height:500px}.hero-photo{height:500px}.editorial-grid{gap:38px}.culture-copy:after{display:none}.destination-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:920px){
  .nav-links{display:none;position:absolute;left:22px;right:22px;top:80px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:15px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}.nav-links.open{display:flex}.nav-links a{padding:10px}.nav-links a:after{display:none}.menu-btn{display:block}.home-hero-grid,.page-hero .wrap,.tool-shell,.editorial-grid,.culture-grid{grid-template-columns:1fr}.home-hero-copy{padding-bottom:24px}.hero-photo-wrap{min-height:440px}.hero-photo{height:440px;width:min(82%,560px)}.quick-tools-grid{grid-template-columns:repeat(3,1fr)}.quick-tool:nth-child(4){border-left:1px solid var(--line)}.editorial-cards{max-width:720px;margin-inline:auto}.tool-feature-grid{grid-template-columns:repeat(2,1fr)}.page-hero img{height:360px;max-width:650px}.tool-panel.sticky{position:static}.grid.four{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .wrap{width:min(calc(100% - 26px),var(--max))}.site-header:before{height:2px}.nav{min-height:72px}.brand strong{font-size:23px}.brand small{letter-spacing:1.8px}.brand-mark{width:36px;height:36px}.nav-links{top:70px;left:13px;right:13px}.home-hero{padding-top:28px}.home-hero h1{font-size:52px}.home-hero-copy{padding:14px 0 22px}.hero-photo-wrap{min-height:365px}.hero-photo{height:365px;width:90%;border-width:7px}.hero-note{font-size:17px;right:0;bottom:24px;max-width:170px}.quick-tools-grid{grid-template-columns:repeat(2,1fr)}.quick-tool:nth-child(odd){border-left:1px solid var(--line)}.editorial-section,.section{padding:56px 0}.editorial-cards{grid-template-columns:1fr}.editorial-card{min-height:360px}.tool-feature-grid,.destination-grid,.grid.two,.grid.three,.grid.four,.field-grid,.table-grid{grid-template-columns:1fr}.destination-card{min-height:250px}.section-head{display:block}.section-head p{margin-top:10px}.culture-photo{min-height:300px}.culture-copy{padding:42px 26px}.page-hero{padding:28px 0 38px}.page-hero .wrap{gap:28px}.page-hero img{height:310px;border-radius:170px 170px 22px 22px;border-width:6px}.expense-row,.guest-row{grid-template-columns:1fr 1fr}.expense-row>:first-child,.guest-row>:first-child{grid-column:1/-1}.footer-grid{grid-template-columns:1fr}.brand small{display:block}h1{font-size:46px}.tool-panel{padding:22px}.popular-tools:after{font-size:110px}.btn{width:100%}
}
@media print{.site-header,.footer,.toolbar,.tool-actions,.btns,.notice,.quick-tools{display:none!important}.print-only{display:block}.tool-shell{display:block}.tool-panel{box-shadow:none;border:0;padding:0}.tool-panel.sticky{margin-top:24px}.section{padding:0}.wrap{width:100%}body{background:#fff;color:#000}}

/* ============================================================
   WeddingIdea.ca V3 — competition-researched editorial system
   Hybrid direction: luxury editorial inspiration + practical tools
   ============================================================ */
body.v3{
  --ink:#172623;
  --ink-soft:#34423f;
  --muted:#68716d;
  --cream:#f6f0e8;
  --paper:#fffdf9;
  --blush:#efe2da;
  --sage:#e7ece5;
  --gold:#a97a46;
  --gold-deep:#805b35;
  --gold-pale:#dfc7a9;
  --line:#e7ddd2;
  --line-dark:#d9cab9;
  --shadow-sm:0 14px 38px rgba(24,39,36,.07);
  --shadow:0 28px 74px rgba(24,39,36,.11);
  --shadow-lg:0 34px 96px rgba(24,39,36,.15);
  --radius:18px;
  --radius-lg:28px;
  background:#fffdf9;
}
body.v3 h1,body.v3 h2,body.v3 h3,
body.v3 .brand strong{font-family:"Iowan Old Style",Baskerville,"Times New Roman",Georgia,serif}
body.v3 .utility-bar{background:#162724;color:#dfe8e3;border-bottom:1px solid rgba(255,255,255,.06)}
body.v3 .utility-inner{min-height:29px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
body.v3 .utility-inner>span{color:#d6c3aa}
body.v3 .utility-inner div{display:flex;gap:18px}
body.v3 .utility-inner a{color:#cbd5d0;text-decoration:none}
body.v3 .site-header{background:rgba(255,253,249,.97);backdrop-filter:blur(16px);border-bottom:1px solid rgba(128,91,53,.13)}
body.v3 .site-header:before{display:none}
body.v3 .nav{min-height:78px}
body.v3 .brand-mark{width:39px;height:39px}
body.v3 .brand-mark:before{font-size:30px;color:#a97a46}
body.v3 .brand strong{font-size:28px;font-weight:500;letter-spacing:-.8px}
body.v3 .brand small{font-size:8px;letter-spacing:2.25px;margin-top:4px}
body.v3 .nav-links{gap:23px}
body.v3 .nav-links a{font-size:12px;font-weight:700;letter-spacing:.02em}
body.v3 .nav-cta{border-radius:3px;padding:12px 17px;background:#9d7243;box-shadow:none;text-transform:uppercase;font-size:10px!important;letter-spacing:.08em!important}
body.v3 .eyebrow{color:#9b6f42;font-size:10px;letter-spacing:2.45px}
body.v3 .btn{border-radius:3px;text-transform:uppercase;letter-spacing:.08em;font-size:11px;padding:14px 20px}
body.v3 .btn.gold{background:#9d7243;box-shadow:none}
body.v3 .btn.secondary{background:#fffdf9;border-color:#bd9b78;color:#805b35}
body.v3 .text-link{font-size:11px;letter-spacing:.09em}

/* Homepage hero */
body.v3 .v3-hero{position:relative;min-height:640px;background:#e9e1d7;overflow:hidden;isolation:isolate}
body.v3 .v3-hero-photo{position:absolute;inset:0 0 0 43%;z-index:-2}
body.v3 .v3-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
body.v3 .v3-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff9f1 0%,#fff9f1 33%,rgba(255,249,241,.92) 43%,rgba(255,249,241,.2) 64%,rgba(18,28,25,.08) 100%)}
body.v3 .v3-hero-inner{min-height:640px;display:flex;align-items:center}
body.v3 .v3-hero-copy{width:min(50%,650px);padding:62px 0 70px}
body.v3 .v3-hero h1{font-size:clamp(58px,6.6vw,92px);font-weight:400;letter-spacing:-2.7px;line-height:.96;margin:18px 0 24px}
body.v3 .v3-hero .lead{font-size:17px;max-width:590px;color:#485550;line-height:1.72}
body.v3 .hero-ghost{background:rgba(255,253,249,.78);backdrop-filter:blur(8px);border-color:rgba(128,91,53,.5);color:#493c31}
body.v3 .v3-proof{margin-top:34px;display:flex;flex-wrap:wrap;gap:0;color:#6b706c;font-size:11px}
body.v3 .v3-proof span{padding:0 15px;border-left:1px solid #cdbda9}
body.v3 .v3-proof span:first-child{padding-left:0;border-left:0}

/* Shortcut rail */
body.v3 .v3-toolrail{position:relative;margin-top:-1px;background:#fff;border-top:1px solid #eee5dc;border-bottom:1px solid #eee5dc;box-shadow:0 10px 30px rgba(36,45,41,.04);z-index:3}
body.v3 .v3-toolrail-grid{display:grid;grid-template-columns:repeat(8,1fr)}
body.v3 .v3-toolrail a{min-height:96px;padding:19px 8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;text-decoration:none;border-right:1px solid #eee7df;color:#25322f;text-align:center}
body.v3 .v3-toolrail a:first-child{border-left:1px solid #eee7df}
body.v3 .v3-toolrail a:hover{background:#faf5ee}
body.v3 .v3-toolrail b{font:500 12px/1 "Iowan Old Style",Baskerville,Georgia,serif;color:#9c7146;letter-spacing:.08em}
body.v3 .v3-toolrail span{font-size:11px;font-weight:700}

/* Editorial opening */
body.v3 .v3-editorial{padding:104px 0 96px;background:#fffdf9}
body.v3 .v3-editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:74px;align-items:center}
body.v3 .v3-editorial-copy{max-width:470px}
body.v3 .v3-editorial-copy h2{font-size:clamp(42px,4.7vw,62px);letter-spacing:-1.9px;margin:16px 0 26px}
body.v3 .v3-editorial-copy p{color:#64706b;font-size:16px;margin-bottom:28px}
body.v3 .v3-editorial-mosaic{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:1fr 1fr;gap:13px;height:590px}
body.v3 .v3-editorial-mosaic a{position:relative;overflow:hidden;text-decoration:none;background:#ddd;min-height:0}
body.v3 .v3-editorial-mosaic .mosaic-large{grid-row:1/3}
body.v3 .v3-editorial-mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
body.v3 .v3-editorial-mosaic a:hover img{transform:scale(1.025)}
body.v3 .v3-editorial-mosaic a:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(14,24,21,.8))}
body.v3 .v3-editorial-mosaic span{position:absolute;left:21px;right:21px;bottom:18px;z-index:2;color:#fff;font:500 26px/1.05 "Iowan Old Style",Baskerville,Georgia,serif}
body.v3 .v3-editorial-mosaic small{display:block;margin-bottom:7px;font:700 9px/1.2 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:#f0d6b6}

/* Planning studio */
body.v3 .v3-studio{padding:94px 0 100px;background:#f4ede4;border-top:1px solid #eadfd3;border-bottom:1px solid #eadfd3}
body.v3 .v3-section-head{align-items:flex-end;margin-bottom:38px}
body.v3 .v3-section-head h2{font-size:clamp(40px,4.3vw,58px);letter-spacing:-1.6px;margin-top:12px}
body.v3 .v3-section-head>p{max-width:510px}
body.v3 .v3-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
body.v3 .v3-tool-card{position:relative;min-height:255px;background:#fffdf9;border:1px solid #e5d8c9;padding:27px 25px;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
body.v3 .v3-tool-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:#c6a17b}
body.v3 .v3-tool-card.featured{grid-column:span 2;grid-row:span 2;min-height:522px;padding:36px;display:grid;grid-template-columns:1fr 190px;gap:34px;align-items:end;background:#172724;color:#fff;border-color:#172724;overflow:hidden}
body.v3 .v3-tool-card.featured:after{content:"♡";position:absolute;right:24px;top:8px;font:400 150px/1 Georgia,serif;color:rgba(255,255,255,.04)}
body.v3 .v3-tool-card.featured h3{font-size:44px;color:#fff;margin:10px 0 17px}
body.v3 .v3-tool-card.featured p{color:#cbd6d1;max-width:520px}
body.v3 .v3-tool-card.featured .eyebrow{color:#d8b58e}
body.v3 .v3-tool-card.featured .text-link{color:#e8c9a6}
body.v3 .v3-tool-card h3{font-size:27px;margin:11px 0 13px}
body.v3 .v3-tool-card p{color:#68716d;font-size:14px;margin:0 0 20px}
body.v3 .tool-no{position:absolute;top:20px;right:22px;color:#b8a28a;font:500 13px/1 "Iowan Old Style",Baskerville,Georgia,serif}
body.v3 .mini-budget{align-self:stretch;display:flex;align-items:end;gap:9px;height:210px;padding:18px;border-left:1px solid rgba(255,255,255,.12)}
body.v3 .mini-budget span{flex:1;background:linear-gradient(#d7b087,#9d7243);opacity:.9}
body.v3 .mini-budget span:nth-child(1){height:42%}body.v3 .mini-budget span:nth-child(2){height:72%}body.v3 .mini-budget span:nth-child(3){height:54%}body.v3 .mini-budget span:nth-child(4){height:88%}

/* Destinations */
body.v3 .v3-destinations{padding:96px 0;background:#fffdf9}
body.v3 .v3-destination-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
body.v3 .v3-destination-grid a{position:relative;min-height:320px;overflow:hidden;text-decoration:none;background:#ddd}
body.v3 .v3-destination-grid img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .45s ease}
body.v3 .v3-destination-grid a:hover img{transform:scale(1.035)}
body.v3 .v3-destination-grid a:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(12,25,22,.88))}
body.v3 .v3-destination-grid span{position:absolute;z-index:2;left:18px;right:14px;bottom:18px;color:#fff;font:500 26px/1.02 "Iowan Old Style",Baskerville,Georgia,serif}
body.v3 .v3-destination-grid small{display:block;margin-bottom:7px;color:#e7c7a2;text-transform:uppercase;letter-spacing:.14em;font:700 8px/1 Inter,system-ui,sans-serif}
body.v3 .v3-more{text-align:right;margin:24px 0 0}

/* Cultural feature */
body.v3 .v3-culture{padding:0;background:#172724;color:#fff}
body.v3 .v3-culture-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:520px;align-items:stretch}
body.v3 .v3-culture-image{position:relative;margin-left:calc((100vw - min(calc(100% - 44px),var(--max)))/-2);min-width:0;overflow:hidden}
body.v3 .v3-culture-image img{width:100%;height:100%;object-fit:cover}
body.v3 .v3-culture-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#172724)}
body.v3 .v3-culture-image span{position:absolute;left:30px;bottom:24px;z-index:2;background:rgba(255,253,249,.9);color:#805b35;padding:12px 15px;font:italic 18px/1.3 "Iowan Old Style",Baskerville,Georgia,serif;max-width:260px}
body.v3 .v3-culture-copy{padding:76px 0 70px 56px;align-self:center}
body.v3 .v3-culture-copy h2{color:#fff;font-size:clamp(42px,4.3vw,58px);letter-spacing:-1.6px;margin:14px 0 22px}
body.v3 .v3-culture-copy p{color:#c6d0cb;max-width:570px}
body.v3 .v3-culture-copy .eyebrow{color:#d5b188}
body.v3 .v3-link-list{margin-top:30px;border-top:1px solid rgba(255,255,255,.16)}
body.v3 .v3-link-list a{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16);color:#f1eee9;text-decoration:none;font-weight:700;font-size:13px}
body.v3 .v3-link-list a span{color:#d9b48a}

/* Ideas mosaic */
body.v3 .v3-ideas{padding:100px 0;background:#fffdf9}
body.v3 .v3-idea-grid{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:12px}
body.v3 .v3-idea-grid a{position:relative;min-height:390px;overflow:hidden;text-decoration:none;background:#ddd}
body.v3 .v3-idea-grid img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .45s ease}
body.v3 .v3-idea-grid a:hover img{transform:scale(1.025)}
body.v3 .v3-idea-grid a:after{content:"";position:absolute;inset:36% 0 0;background:linear-gradient(transparent,rgba(15,28,25,.88))}
body.v3 .v3-idea-grid div{position:absolute;z-index:2;left:20px;right:18px;bottom:18px;color:#fff}
body.v3 .v3-idea-grid small{display:block;text-transform:uppercase;letter-spacing:.15em;color:#e6c39d;font-size:8px;font-weight:800;margin-bottom:8px}
body.v3 .v3-idea-grid h3{color:#fff;font-size:25px;margin:0}
body.v3 .v3-idea-grid p{color:#dce3df;font-size:13px;max-width:430px;margin-bottom:0}
body.v3 .v3-idea-grid .wide h3{font-size:36px}

/* Principles */
body.v3 .v3-principles{background:#efe4d9;border-top:1px solid #e5d6c7;border-bottom:1px solid #e5d6c7}
body.v3 .v3-principles-grid{display:grid;grid-template-columns:repeat(4,1fr)}
body.v3 .v3-principles-grid div{padding:32px 28px;border-right:1px solid #ddcdbb}
body.v3 .v3-principles-grid div:first-child{border-left:1px solid #ddcdbb}
body.v3 .v3-principles strong{display:block;font:500 22px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;margin-bottom:7px}
body.v3 .v3-principles span{color:#6d716d;font-size:12px}

body.v3 .v3-final{padding:84px 0;background:#fbf7f2}
body.v3 .v3-final-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
body.v3 .v3-final h2{font-size:clamp(38px,4.3vw,56px);max-width:780px;margin:10px 0 0}

/* Inner pages: editorial, less app-like */
body.v3.inner-page .breadcrumbs{padding-top:24px;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#8b7762}
body.v3.inner-page .page-hero{padding:50px 0 64px;background:#f5ede3;border-bottom:1px solid #e8ddd0}
body.v3.inner-page .page-hero .wrap{grid-template-columns:1.02fr .98fr;gap:72px}
body.v3.inner-page .page-hero h1{font-size:clamp(50px,5.6vw,76px);letter-spacing:-2.2px}
body.v3.inner-page .page-hero img{height:420px;border-radius:0;border:0;box-shadow:var(--shadow);object-fit:cover}
body.v3.inner-page .section.alt{background:#fffdf9}
body.v3.inner-page .section{padding-top:82px;padding-bottom:82px}
body.v3.inner-page .tool-panel{border-radius:3px;border-color:#e4d7c8;background:#fff;box-shadow:0 12px 36px rgba(36,45,41,.05)}
body.v3.inner-page .tool-panel.sticky{background:#f5ede3}
body.v3.inner-page input,body.v3.inner-page select,body.v3.inner-page textarea{border-radius:2px;background:#fff}
body.v3.inner-page .tool-actions button{border-radius:3px;text-transform:uppercase;letter-spacing:.06em;font-size:10px}
body.v3.inner-page .callout{border-radius:2px}
body.v3.inner-page .card,body.v3.inner-page .checklist-group,body.v3.inner-page .table-card{border-radius:3px}

/* V3 responsive */
@media(max-width:1100px){
  body.v3 .nav-links{gap:14px}
  body.v3 .nav-links a{font-size:11px}
  body.v3 .v3-toolrail-grid{grid-template-columns:repeat(4,1fr)}
  body.v3 .v3-toolrail a:nth-child(5){border-left:1px solid #eee7df}
  body.v3 .v3-tool-grid{grid-template-columns:repeat(2,1fr)}
  body.v3 .v3-tool-card.featured{grid-column:span 2}
  body.v3 .v3-destination-grid{grid-template-columns:repeat(3,1fr)}
  body.v3 .v3-idea-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:920px){
  body.v3 .utility-inner div{display:none}
  body.v3 .nav-links{top:107px}
  body.v3 .v3-hero{min-height:auto}
  body.v3 .v3-hero-photo{position:relative;inset:auto;height:480px}
  body.v3 .v3-hero:after{background:linear-gradient(180deg,#fff9f1 0%,rgba(255,249,241,.9) 12%,rgba(255,249,241,.12) 48%,rgba(19,28,25,.04) 100%)}
  body.v3 .v3-hero-inner{min-height:auto;margin-top:-480px;align-items:flex-start}
  body.v3 .v3-hero-copy{width:min(100%,620px);padding:52px 0 500px}
  body.v3 .v3-hero h1{font-size:64px;max-width:620px}
  body.v3 .v3-editorial-grid,body.v3 .v3-culture-grid{grid-template-columns:1fr}
  body.v3 .v3-editorial-copy{max-width:660px}
  body.v3 .v3-editorial-mosaic{height:650px}
  body.v3 .v3-culture-image{margin-left:0;height:460px}
  body.v3 .v3-culture-image:after{background:linear-gradient(180deg,transparent 70%,#172724)}
  body.v3 .v3-culture-copy{padding:55px 0 68px}
  body.v3.inner-page .page-hero .wrap{grid-template-columns:1fr;gap:35px}
  body.v3.inner-page .page-hero img{max-width:none;height:430px}
}
@media(max-width:680px){
  body.v3 .utility-inner{min-height:25px;font-size:8px;justify-content:center}
  body.v3 .nav{min-height:70px}
  body.v3 .nav-links{top:95px}
  body.v3 .brand strong{font-size:23px}
  body.v3 .brand small{font-size:7px}
  body.v3 .v3-hero-photo{height:385px}
  body.v3 .v3-hero-inner{margin-top:-385px}
  body.v3 .v3-hero-copy{padding:34px 0 405px}
  body.v3 .v3-hero h1{font-size:50px;line-height:.98;letter-spacing:-1.8px}
  body.v3 .v3-hero .lead{font-size:15px}
  body.v3 .v3-proof{display:grid;gap:7px}
  body.v3 .v3-proof span{padding:0;border:0}
  body.v3 .v3-toolrail-grid{grid-template-columns:repeat(2,1fr)}
  body.v3 .v3-toolrail a:nth-child(odd){border-left:1px solid #eee7df}
  body.v3 .v3-editorial,body.v3 .v3-studio,body.v3 .v3-destinations,body.v3 .v3-ideas{padding:62px 0}
  body.v3 .v3-editorial-grid{gap:38px}
  body.v3 .v3-editorial-mosaic{height:auto;grid-template-columns:1fr;grid-template-rows:auto}
  body.v3 .v3-editorial-mosaic .mosaic-large{grid-row:auto}
  body.v3 .v3-editorial-mosaic a{min-height:320px}
  body.v3 .v3-tool-grid{grid-template-columns:1fr}
  body.v3 .v3-tool-card.featured{grid-column:auto;grid-row:auto;grid-template-columns:1fr;min-height:390px}
  body.v3 .mini-budget{display:none}
  body.v3 .v3-destination-grid{grid-template-columns:1fr 1fr}
  body.v3 .v3-destination-grid a{min-height:240px}
  body.v3 .v3-destination-grid a:last-child{grid-column:1/-1}
  body.v3 .v3-idea-grid{grid-template-columns:1fr}
  body.v3 .v3-idea-grid a{min-height:330px}
  body.v3 .v3-principles-grid{grid-template-columns:1fr 1fr}
  body.v3 .v3-principles-grid div:nth-child(odd){border-left:1px solid #ddcdbb}
  body.v3 .v3-final-inner{display:block}
  body.v3 .v3-final .btns{margin-top:28px}
  body.v3.inner-page .page-hero{padding:34px 0 42px}
  body.v3.inner-page .page-hero h1{font-size:46px}
  body.v3.inner-page .page-hero img{height:320px}
}


/* ============================================================
   WeddingIdea.ca V4 — premium inner-page editorial system
   ============================================================ */
body.v4{background:#fffdf9}
body.v4 .breadcrumbs{padding:14px 0 12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7d746b}
body.v4 .guide-hero{position:relative;min-height:570px;overflow:hidden;background:#e8e0d6;isolation:isolate}
body.v4 .guide-hero-media{position:absolute;inset:0;z-index:-2}
body.v4 .guide-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}
body.v4 .guide-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,251,245,.98) 0%,rgba(255,251,245,.94) 34%,rgba(255,251,245,.53) 52%,rgba(16,30,27,.05) 100%)}
body.v4 .guide-hero-inner{min-height:570px;display:flex;align-items:center}
body.v4 .guide-hero-copy{width:min(53%,700px);padding:58px 0}
body.v4 .guide-hero h1{font-size:clamp(58px,6.4vw,90px);line-height:.95;letter-spacing:-2.8px;margin:14px 0 22px}
body.v4 .guide-hero .lead{font-size:17px;max-width:660px;color:#48544f;line-height:1.75}
body.v4 .hero-glass{background:rgba(255,253,249,.78);backdrop-filter:blur(8px)}
body.v4 .guide-facts{background:#fff;border-top:1px solid #eee5dc;border-bottom:1px solid #eee5dc;box-shadow:0 12px 35px rgba(35,45,41,.04)}
body.v4 .guide-facts-grid{display:grid;grid-template-columns:repeat(5,1fr)}
body.v4 .guide-fact{padding:22px 20px;border-left:1px solid #eee5dc;min-height:92px}
body.v4 .guide-fact:last-child{border-right:1px solid #eee5dc}
body.v4 .guide-fact b{display:block;font:500 15px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;color:#8f663e;margin-bottom:7px}
body.v4 .guide-fact span{display:block;font-size:11px;line-height:1.45;color:#59635f}
body.v4 .guide-content{padding:92px 0 104px;background:#fffdf9}
body.v4 .guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:70px;align-items:start}
body.v4 .guide-article{min-width:0}
body.v4 .guide-article p{font-size:16.5px;color:#55605b;line-height:1.82}
body.v4 .guide-article h2{font-size:clamp(37px,4.1vw,54px);letter-spacing:-1.4px;margin:12px 0 22px}
body.v4 .editorial-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:48px;align-items:center;padding-bottom:78px;border-bottom:1px solid #e9dfd4}
body.v4 .editorial-figure{margin:0;position:relative}
body.v4 .editorial-figure img{width:100%;min-height:440px;height:100%;object-fit:cover;box-shadow:0 25px 60px rgba(27,39,35,.11)}
body.v4 .editorial-figure figcaption{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8a8177;margin-top:9px}
body.v4 .editorial-checks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px}
body.v4 .editorial-checks li{position:relative;padding-left:27px;font-size:14px;color:#47534e}
body.v4 .editorial-checks li:before{content:"✓";position:absolute;left:0;top:0;color:#a97a46;font-weight:800}
body.v4 .content-section{padding:78px 0;border-bottom:1px solid #e9dfd4}
body.v4 .content-section.first-section{padding-top:0}
body.v4 .content-section:last-child{border-bottom:0;padding-bottom:0}
body.v4 .tone-panel{margin:78px -36px 0;padding:60px 36px;background:#f4ede4;border:1px solid #eadfd3}
body.v4 .style-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e3d7ca;border:1px solid #e3d7ca;margin-top:35px}
body.v4 .guide-card{background:#fffdf9;padding:27px 24px;min-height:205px}
body.v4 .guide-card .card-num{font-size:10px;letter-spacing:.14em;color:#a97a46;margin-bottom:32px}
body.v4 .guide-card h3{font-size:23px;margin-bottom:10px}
body.v4 .guide-card p{font-size:13px;line-height:1.65;margin:0}
body.v4 .season-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}
body.v4 .season-grid article{background:rgba(255,253,249,.78);padding:25px 22px;border-top:2px solid #a97a46}
body.v4 .season-grid b{font:500 23px/1.1 "Iowan Old Style",Baskerville,Georgia,serif}
body.v4 .season-grid p{font-size:13px;margin:10px 0 0;line-height:1.6}
body.v4 .sample-timeline{margin-top:30px;border-top:1px solid #decfbe}
body.v4 .sample-timeline>div{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid #e6ddd4}
body.v4 .sample-timeline time{font:500 16px/1.2 "Iowan Old Style",Baskerville,Georgia,serif;color:#9c7146}
body.v4 .sample-timeline span{font-size:13px;color:#65706b;line-height:1.55}
body.v4 .sample-timeline b{display:block;color:#273530;font-size:14px;margin-bottom:4px}
body.v4 .advice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:34px}
body.v4 .advice-card{border-top:1px solid #cfae8a;padding:21px 8px 4px 0}
body.v4 .advice-card>span{font-size:10px;letter-spacing:.12em;color:#aa7e51}
body.v4 .advice-card h3{font-size:22px;margin:13px 0 8px}
body.v4 .advice-card p{font-size:13px;margin:0;line-height:1.65}
body.v4 .faq-list{margin-top:30px;border-top:1px solid #e4d8cc}
body.v4 .faq-list details{border-bottom:1px solid #e4d8cc;padding:20px 0}
body.v4 .faq-list summary{font:500 20px/1.3 "Iowan Old Style",Baskerville,Georgia,serif;cursor:pointer;list-style-position:outside}
body.v4 .faq-list p{font-size:14px;margin:14px 0 0;max-width:780px}
body.v4 .guide-sidebar{position:sticky;top:128px;display:grid;gap:18px}
body.v4 .side-card{border:1px solid #e5d8c9;background:#fff;padding:24px;box-shadow:0 15px 38px rgba(35,45,41,.05)}
body.v4 .side-card h2{font-size:28px;margin:8px 0 18px}
body.v4 .side-kicker{font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#956a41}
body.v4 .side-tools a{position:relative;display:block;text-decoration:none;padding:13px 22px 13px 0;border-top:1px solid #eee4da}
body.v4 .side-tools a b{display:block;font:500 17px/1.2 "Iowan Old Style",Baskerville,Georgia,serif;color:#24332f}
body.v4 .side-tools a span{display:block;font-size:10px;color:#7a817d;margin-top:3px}
body.v4 .side-tools a i,body.v4 .side-related a i{position:absolute;right:0;top:50%;transform:translateY(-50%);font-style:normal;color:#a97a46}
body.v4 .side-note{background:#172724;color:#e9ede9;padding:27px 25px;position:relative;overflow:hidden}
body.v4 .side-note:after{content:"♡";position:absolute;right:-6px;bottom:-29px;font:120px/1 Georgia,serif;color:rgba(255,255,255,.04)}
body.v4 .side-note .side-kicker{color:#d8b58f}
body.v4 .side-note p{font:400 17px/1.55 "Iowan Old Style",Baskerville,Georgia,serif;margin:12px 0 0;color:#f2f3ef;position:relative;z-index:1}
body.v4 .side-related a{position:relative;display:block;text-decoration:none;padding:14px 22px 14px 0;border-top:1px solid #eee4da;font-size:12px;font-weight:700}
body.v4 .related-band{background:#f4ede4;border-top:1px solid #e7d9ca;padding:72px 0 78px}
body.v4 .related-band h2{font-size:44px}
body.v4 .related-band-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dac9b8;border:1px solid #dac9b8}
body.v4 .related-band-grid a{position:relative;min-height:145px;background:#fffdf9;padding:24px;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end}
body.v4 .related-band-grid a span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#a07850;margin-bottom:8px}
body.v4 .related-band-grid a b{font:500 21px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;padding-right:22px}
body.v4 .related-band-grid a i{position:absolute;right:20px;bottom:22px;font-style:normal;color:#a97a46}
body.v4 .related-band-grid a:hover{background:#fcf6ee}
body.v4 .planning-tool-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#d8c8b8;border:1px solid #d8c8b8;margin-top:32px}
body.v4 .planning-tool-grid a{background:#fffdf9;min-height:210px;padding:24px;text-decoration:none}
body.v4 .planning-tool-grid span{font-size:10px;letter-spacing:.13em;color:#a97a46}
body.v4 .planning-tool-grid b{display:block;font:500 23px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;margin:44px 0 8px}
body.v4 .planning-tool-grid p{font-size:12px;line-height:1.55;margin:0}
body.v4 .visual-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
body.v4 .visual-guide-grid a{position:relative;min-height:360px;overflow:hidden;text-decoration:none;background:#ddd}
body.v4 .visual-guide-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
body.v4 .visual-guide-grid a:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(15,25,22,.88))}
body.v4 .visual-guide-grid a:hover img{transform:scale(1.025)}
body.v4 .visual-guide-grid span{position:absolute;left:24px;right:24px;bottom:22px;color:#fff;z-index:2}
body.v4 .visual-guide-grid small{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#efd5b4;margin-bottom:8px}
body.v4 .visual-guide-grid b{font:500 27px/1.05 "Iowan Old Style",Baskerville,Georgia,serif}
body.v4 .visual-guide-grid i{float:right;font-style:normal;font-size:22px}
body.v4 .tone-section{background:#f4ede4}
body.v4 .destination-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-top:34px}
body.v4 .destination-feature-grid a{text-decoration:none;background:#fff;border:1px solid #e5dbd1;overflow:hidden}
body.v4 .destination-feature-grid img{width:100%;height:180px;object-fit:cover}
body.v4 .destination-feature-grid span{display:block;padding:18px}
body.v4 .destination-feature-grid small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#a1764c}
body.v4 .destination-feature-grid b{display:block;font:500 24px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;margin:6px 0}
body.v4 .destination-feature-grid p{font-size:11px;line-height:1.5;color:#6c746f;margin:0}
body.v4 .narrow-copy{max-width:1000px}
body.v4 .narrow-copy>h2{font-size:56px}
body.v4 .narrow-copy>p{font-size:18px;max-width:760px;color:#56605c}
body.v4 .principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ded2c6;border:1px solid #ded2c6;margin-top:44px}
body.v4 .principle-grid article{background:#fff;padding:28px;min-height:235px}
body.v4 .principle-grid span{font-size:10px;color:#a97a46;letter-spacing:.12em}
body.v4 .principle-grid h3{margin-top:58px}
body.v4 .principle-grid p{font-size:13px;color:#64706b}
body.v4 .resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ddd0c3;border:1px solid #ddd0c3}
body.v4 .resource-grid>section{background:#fffdf9;padding:40px;min-height:330px}
body.v4 .resource-grid h2{font-size:36px}
body.v4 .resource-grid>section>a{display:block;text-decoration:none;padding:15px 0;border-top:1px solid #eadfd4}
body.v4 .resource-grid>section>a b{display:block;font:500 19px/1.2 "Iowan Old Style",Baskerville,Georgia,serif}
body.v4 .resource-grid>section>a span{display:block;font-size:11px;color:#737b77;margin-top:4px}
body.v4 .contact-editorial{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start;max-width:1000px}
body.v4 .contact-editorial h2{font-size:52px}
body.v4 .contact-editorial>div>p{font-size:17px;color:#5f6964}
body.v4 .contact-editorial aside{background:#172724;color:#fff;padding:32px}
body.v4 .contact-editorial aside .side-kicker{color:#d8b58f}
body.v4 .contact-editorial aside p{color:#eef0ed;margin-bottom:0}
body.v4 .contact-box{margin-top:35px;border-top:1px solid #dbc8b5;padding-top:22px}

/* V4 tool pages */
body.v4 .guide-facts + .section.alt{background:#f4ede4!important;padding:74px 0}
body.v4 .guide-facts + .section.alt h2{font-size:34px}
body.v4 .guide-facts + .section.alt .tool-panel{border-radius:4px;box-shadow:0 18px 50px rgba(29,42,38,.07);border-color:#dfd1c2}
body.v4 .guide-facts + .section.alt .tool-panel.sticky{background:#fffdf9}
body.v4 .tool-panel input,body.v4 .tool-panel select,body.v4 .tool-panel textarea{border-radius:2px;border-color:#d8ccbf;background:#fff}
body.v4 .tool-panel button{border-radius:2px}
body.v4 .tool-panel .callout{border-radius:0;box-shadow:none}

@media(max-width:1100px){
 body.v4 .guide-layout{grid-template-columns:minmax(0,1fr) 280px;gap:42px}
 body.v4 .guide-facts-grid{grid-template-columns:repeat(3,1fr)}
 body.v4 .guide-fact:nth-child(4){border-left:0}
 body.v4 .style-card-grid{grid-template-columns:repeat(2,1fr)}
 body.v4 .planning-tool-grid{grid-template-columns:repeat(3,1fr)}
 body.v4 .destination-feature-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
 body.v4 .guide-hero{min-height:620px}
 body.v4 .guide-hero:after{background:linear-gradient(90deg,rgba(255,251,245,.97) 0%,rgba(255,251,245,.88) 54%,rgba(255,251,245,.28) 100%)}
 body.v4 .guide-hero-copy{width:min(72%,690px)}
 body.v4 .guide-layout{grid-template-columns:1fr}
 body.v4 .guide-sidebar{position:static;grid-template-columns:1fr 1fr}
 body.v4 .side-tools{grid-row:span 2}
 body.v4 .editorial-split{grid-template-columns:1fr}
 body.v4 .editorial-figure img{min-height:360px;max-height:560px}
 body.v4 .related-band-grid{grid-template-columns:repeat(2,1fr)}
 body.v4 .visual-guide-grid{grid-template-columns:repeat(2,1fr)}
 body.v4 .principle-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
 body.v4 .breadcrumbs{padding-top:11px}
 body.v4 .guide-hero{min-height:640px}
 body.v4 .guide-hero-media img{object-position:63% center}
 body.v4 .guide-hero:after{background:linear-gradient(180deg,rgba(255,251,245,.99) 0%,rgba(255,251,245,.88) 48%,rgba(255,251,245,.15) 100%)}
 body.v4 .guide-hero-inner{min-height:640px;align-items:flex-start}
 body.v4 .guide-hero-copy{width:100%;padding:45px 0 0}
 body.v4 .guide-hero h1{font-size:50px;letter-spacing:-1.8px}
 body.v4 .guide-hero .lead{font-size:15px;max-width:92%}
 body.v4 .guide-facts-grid{grid-template-columns:1fr 1fr}
 body.v4 .guide-fact:nth-child(n){border-left:1px solid #eee5dc;border-right:0}
 body.v4 .guide-fact:nth-child(odd){border-left:0}
 body.v4 .guide-content{padding:62px 0 76px}
 body.v4 .editorial-split{gap:30px;padding-bottom:56px}
 body.v4 .guide-article h2{font-size:38px}
 body.v4 .content-section{padding:56px 0}
 body.v4 .tone-panel{margin:56px -13px 0;padding:44px 13px}
 body.v4 .style-card-grid,.season-grid,body.v4 .advice-grid,body.v4 .planning-tool-grid,body.v4 .visual-guide-grid,body.v4 .destination-feature-grid,body.v4 .resource-grid{grid-template-columns:1fr}
 body.v4 .guide-sidebar{grid-template-columns:1fr}
 body.v4 .side-tools{grid-row:auto}
 body.v4 .related-band-grid{grid-template-columns:1fr}
 body.v4 .related-band h2{font-size:36px}
 body.v4 .editorial-figure img{min-height:300px}
 body.v4 .sample-timeline>div{grid-template-columns:70px 1fr}
 body.v4 .principle-grid{grid-template-columns:1fr}
 body.v4 .contact-editorial{grid-template-columns:1fr;gap:30px}
}

body.v4 .visual-story{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:10px;margin-top:18px}
body.v4 .visual-story figure{position:relative;margin:0;min-height:260px;overflow:hidden;background:#ddd}
body.v4 .visual-story figure:first-child{min-height:340px;grid-row:span 2}
body.v4 .visual-story img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .45s ease}
body.v4 .visual-story figure:hover img{transform:scale(1.025)}
body.v4 .visual-story figcaption{position:absolute;left:17px;bottom:15px;z-index:2;color:#fff;font:500 18px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;text-shadow:0 2px 12px rgba(0,0,0,.35)}
body.v4 .visual-story figure:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(10,20,17,.6))}
@media(max-width:640px){body.v4 .visual-story{grid-template-columns:1fr 1fr}body.v4 .visual-story figure:first-child{grid-column:1/-1;grid-row:auto;min-height:300px}body.v4 .visual-story figure{min-height:210px}}

body.v4 .error-hero{padding:86px 0;background:#f4ede4}
body.v4 .error-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}
body.v4 .error-grid h1{font-size:clamp(54px,6vw,82px);max-width:720px}
body.v4 .error-grid img{width:100%;height:420px;object-fit:cover}
body.v4 .simple-hero{padding:75px 0 82px;background:#f4ede4;border-bottom:1px solid #e3d5c7}
body.v4 .simple-hero h1{font-size:clamp(52px,6vw,78px);max-width:850px;margin-top:14px}
body.v4 .simple-hero .lead{max-width:720px}
body.v4 .privacy-copy{max-width:850px}
body.v4 .privacy-copy h2{margin-top:52px;font-size:38px}
body.v4 .privacy-copy p{font-size:16px;color:#5b6661}
@media(max-width:700px){body.v4 .error-grid{grid-template-columns:1fr}body.v4 .error-grid img{height:300px}}

/* V5 Planning Studio */
body.v5 .planning-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#d8c8b8;border:1px solid #d8c8b8}
body.v5 .planning-stats.four{grid-template-columns:repeat(4,1fr)}
body.v5 .planning-stats>div{background:#fffdf9;min-height:112px;padding:20px;display:flex;flex-direction:column;justify-content:end}
body.v5 .planning-stats strong{font:500 30px/1.05 "Iowan Old Style",Baskerville,Georgia,serif;color:#172724}
body.v5 .planning-stats span{font-size:10px;line-height:1.4;color:#66706c;margin-top:7px}
body.v5 .studio-dashboard{background:#172724;color:#fff;padding:34px;border:1px solid #172724;margin-top:32px}
body.v5 .studio-dashboard .eyebrow{color:#d8b58f}
body.v5 .studio-dashboard h2{color:#fff;font-size:38px;margin-bottom:8px}
body.v5 .studio-dashboard>p{color:#c9d1cd;max-width:780px}
body.v5 .studio-live-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.15);margin-top:28px}
body.v5 .studio-live-card{background:#203330;padding:22px;min-height:150px;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:end}
body.v5 .studio-live-card:hover{background:#29403b}
body.v5 .studio-live-card b{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#d8b58f;margin-bottom:auto}
body.v5 .studio-live-card strong{font:500 27px/1.05 "Iowan Old Style",Baskerville,Georgia,serif;color:#fff}
body.v5 .studio-live-card span{font-size:10px;line-height:1.45;color:#c9d1cd;margin-top:7px}
body.v5 .event-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.75fr);gap:24px;align-items:start}
body.v5 .event-list{display:grid;gap:8px;margin-top:18px}
body.v5 .event-pill{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #e3d8cd;background:#fff;padding:13px 15px}
body.v5 .event-pill b{display:block;font:500 18px/1.1 Georgia,serif}
body.v5 .event-pill span{display:block;font-size:10px;color:#727a76;margin-top:4px}
body.v5 .event-pill button{border:0;background:#f3ebe3;width:30px;height:30px;color:#744;border-radius:0}
body.v5 .event-pill button:disabled{opacity:.35;cursor:not-allowed}
body.v5 .event-status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}
body.v5 .guest-manager-toolbar{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin:24px 0 16px}
body.v5 .guest-result-line{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 18px;color:#68716d;font-size:11px}
body.v5 .master-guest-list{display:grid;gap:10px}
body.v5 .master-guest-card{border:1px solid #dfd3c7;background:#fffdf9;padding:18px}
body.v5 .master-guest-main{display:grid;grid-template-columns:1.25fr 1fr .7fr .62fr .72fr auto;gap:10px;align-items:end}
body.v5 .master-guest-main .field{margin:0}
body.v5 .guest-remove{height:42px;min-width:42px;border:1px solid #dbcbbd!important;background:#f6eee6!important;color:#7a4038!important}
body.v5 .guest-event-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
body.v5 .guest-event-tags span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;background:#eef1eb;border:1px solid #dde4da;padding:5px 8px;color:#53615b}
body.v5 .guest-details{margin-top:13px;border-top:1px solid #eee4da;padding-top:12px}
body.v5 .guest-details summary{font-size:11px;font-weight:800;color:#956f4c;cursor:pointer}
body.v5 .guest-empty{padding:40px;text-align:center;background:#fff;border:1px solid #e4d8cc}
body.v5 .v5-seat-row{grid-template-columns:1fr 1fr 1fr .7fr!important}
body.v5 .seat-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:end;padding-bottom:7px}
body.v5 .seat-meta span{font-size:9px;background:#eef1eb;padding:5px 7px;text-transform:uppercase;letter-spacing:.06em}
body.v5 .seat-meta .warn{background:#fbefe7;color:#8b5538}
body.v5 .table-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}
body.v5 .table-card-head>button{border:0!important;background:#f4ebe6!important;color:#744!important;padding:8px 11px!important}
body.v5 .simulator-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:24px;align-items:start}
body.v5 .sim-range-wrap{padding:22px 0 6px}
body.v5 .sim-range-wrap input[type=range]{width:100%;accent-color:#a87850}
body.v5 .sim-range-labels{display:flex;justify-content:space-between;color:#777f7b;font-size:10px}
body.v5 .sim-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ded1c4;border:1px solid #ded1c4;margin-top:22px}
body.v5 .sim-breakdown div{background:#fffdf9;padding:18px}
body.v5 .sim-breakdown span{display:block;font-size:10px;color:#6b7470;text-transform:uppercase;letter-spacing:.08em}
body.v5 .sim-breakdown strong{display:block;font:500 25px/1.1 Georgia,serif;margin-top:6px}
body.v5 .sim-change{margin-top:20px;padding:14px;border-left:3px solid #b4865b;background:#fbf5ed;font-weight:700}
body.v5 .sim-change.up{border-color:#9c5a4c;color:#7f4036}
body.v5 .sim-change.down{border-color:#66806f;color:#365a49}
body.v5 .tool-link-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d8c8b8;border:1px solid #d8c8b8;margin-top:24px}
body.v5 .tool-link-strip a{background:#fffdf9;text-decoration:none;padding:20px;min-height:120px;display:flex;flex-direction:column;justify-content:end}
body.v5 .tool-link-strip small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#a27850}
body.v5 .tool-link-strip b{font:500 21px/1.1 Georgia,serif;margin-top:8px}
@media(max-width:1100px){body.v5 .planning-stats{grid-template-columns:repeat(3,1fr)}body.v5 .studio-live-grid{grid-template-columns:repeat(3,1fr)}body.v5 .master-guest-main{grid-template-columns:1fr 1fr 1fr}body.v5 .guest-remove{grid-column:3}body.v5 .guest-manager-toolbar{grid-template-columns:1fr 1fr}.event-editor{grid-template-columns:1fr}}
@media(max-width:760px){body.v5 .planning-stats,body.v5 .planning-stats.four,body.v5 .studio-live-grid{grid-template-columns:1fr 1fr}body.v5 .event-editor,body.v5 .simulator-layout{grid-template-columns:1fr}body.v5 .event-status-grid,body.v5 .guest-manager-toolbar{grid-template-columns:1fr}body.v5 .master-guest-main{grid-template-columns:1fr 1fr}body.v5 .guest-remove{grid-column:auto}body.v5 .v5-seat-row{grid-template-columns:1fr!important}body.v5 .tool-link-strip{grid-template-columns:1fr 1fr}}
@media(max-width:480px){body.v5 .planning-stats,body.v5 .planning-stats.four,body.v5 .studio-live-grid,body.v5 .tool-link-strip{grid-template-columns:1fr}body.v5 .master-guest-main{grid-template-columns:1fr}}
body.v5 .tool-actions .btn{border-radius:2px;padding:10px 14px;font-size:11px;line-height:1.2}


/* V6 Inspiration & Visual Planning */
body.v6 .idea-save,body.v6 .hero-save{border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.9);color:#5c4532;padding:9px 12px;font-size:10px;font-weight:800;letter-spacing:.04em;cursor:pointer}
body.v6 .hero-save{background:rgba(255,255,255,.12);color:#fff}
body.v6 [data-save-idea].saved{background:#7f4e45!important;color:#fff!important;border-color:#7f4e45!important}
body.v6 .inspiration-tile{position:relative;min-width:0}
body.v6 .inspiration-tile>a{height:100%;display:block}
body.v6 .inspiration-tile .idea-save{position:absolute;right:12px;top:12px;z-index:3;box-shadow:0 5px 18px rgba(22,30,28,.12)}
body.v6 .inspiration-callout{padding:0 0 70px}
body.v6 .inspiration-callout-inner{display:flex;justify-content:space-between;gap:40px;align-items:center;background:#172724;color:#fff;padding:38px 42px}
body.v6 .inspiration-callout h2{color:#fff;font-size:38px;margin:8px 0}
body.v6 .inspiration-callout p{color:#cdd5d1;max-width:760px;margin:0}
body.v6 .idea-board-toolbar{display:grid;grid-template-columns:1fr 280px;gap:36px;align-items:end;margin:34px 0 24px}
body.v6 .idea-board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.v6 .idea-board-card{border:1px solid #e1d6ca;background:#fffdf9;min-width:0}
body.v6 .idea-board-media{height:260px;position:relative;background:#ebe1d7;overflow:hidden}
body.v6 .idea-board-media img{width:100%;height:100%;object-fit:cover}
body.v6 .idea-custom-mark{height:100%;display:grid;place-items:center;font:500 70px/1 Georgia,serif;color:#aa805a;background:linear-gradient(135deg,#f7eee5,#e9ddd1)}
body.v6 .idea-remove{position:absolute;right:10px;top:10px;width:34px;height:34px;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.92);font-size:20px;color:#754a43;cursor:pointer}
body.v6 .idea-board-copy{padding:20px}
body.v6 .idea-board-copy>small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#9c744f;font-weight:800}
body.v6 .idea-board-copy h3{font:500 24px/1.14 Georgia,serif;margin:8px 0 18px}
body.v6 .idea-source{display:inline-block;margin-top:12px;font-size:10px;font-weight:800;color:#8f6847;text-decoration:none}
body.v6 .idea-empty-state{padding:55px;text-align:center;border:1px solid #e1d6ca;background:#fffdf9;margin:25px 0}
body.v6 .floor-planner-panel{overflow:hidden}
body.v6 .floor-controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
body.v6 .floor-controls button{font-size:10px;padding:10px 12px}
body.v6 .floor-plan{height:620px;position:relative;overflow:hidden;border:1px solid #cfc1b3;background-color:#fbfaf6;background-image:linear-gradient(#eae3db 1px,transparent 1px),linear-gradient(90deg,#eae3db 1px,transparent 1px);background-size:32px 32px;touch-action:none}
body.v6 .floor-label{position:absolute;left:14px;bottom:12px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#908a82;pointer-events:none}
body.v6 .floor-table,body.v6 .floor-feature{position:absolute;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;cursor:grab;user-select:none;touch-action:none;box-shadow:0 6px 16px rgba(33,42,38,.1)}
body.v6 .floor-table{width:92px;height:92px;background:#fff;border:2px solid #9b7655;color:#253532}
body.v6 .floor-table.shape-round{border-radius:50%}
body.v6 .floor-table.shape-rectangle{width:125px;height:78px}
body.v6 .floor-table.shape-long{width:170px;height:64px}
body.v6 .floor-table.shape-head{width:135px;height:58px;border-color:#6b7c71;background:#edf1ec}
body.v6 .floor-table.over{border-color:#9c4f45;background:#fff0ed}
body.v6 .floor-table b{font:600 13px/1.1 Georgia,serif}
body.v6 .floor-table span{font-size:9px;margin-top:4px;color:#727b77}
body.v6 .floor-feature{width:140px;height:68px;border:1px dashed #778880;background:rgba(229,237,231,.92);color:#41574d}
body.v6 .floor-feature.feature-dance-floor{width:180px;height:140px;background:rgba(238,226,216,.92);border-color:#a98261}
body.v6 .floor-feature.feature-entrance{width:110px;height:44px}
body.v6 .floor-feature b{font-size:10px;text-transform:uppercase;letter-spacing:.09em}
body.v6 .floor-feature button{position:absolute;right:-9px;top:-9px;width:24px;height:24px;border:0;background:#6f5046;color:#fff;border-radius:50%;font-size:13px;padding:0}
body.v6 .floor-table.dragging,body.v6 .floor-feature.dragging{cursor:grabbing;z-index:20;box-shadow:0 12px 28px rgba(20,30,27,.2)}
body.v6 .run-sheet{display:grid;gap:8px}
body.v6 .run-row{display:grid;grid-template-columns:115px 1.25fr 1fr 1fr 1.4fr auto;gap:9px;align-items:end;border-bottom:1px solid #eadfd5;padding:11px 0}
body.v6 .run-row .field{margin:0}
body.v6 .run-remove{height:42px;min-width:42px;border:1px solid #dbcbbd!important;background:#f6eee6!important;color:#7a4038!important}
body.v6 .event-budget-row{display:grid;grid-template-columns:1.7fr 1fr 1fr auto;gap:10px;align-items:end;border-bottom:1px solid #eadfd5;padding:10px 0}
body.v6 .event-budget-row .field{margin:0}
body.v6 .event-budget-row>button{height:42px;min-width:42px;border:1px solid #dbcbbd;background:#f6eee6;color:#7a4038}
body.v6 .event-budget-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8c8b8;border:1px solid #d8c8b8}
body.v6 .event-budget-breakdown>div{background:#fffdf9;padding:18px;min-height:95px;display:flex;justify-content:end;flex-direction:column}
body.v6 .event-budget-breakdown span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:#6e7772}
body.v6 .event-budget-breakdown strong{font:500 24px/1.1 Georgia,serif;margin-top:7px}
body.v6 .studio-live-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){body.v6 .idea-board-grid{grid-template-columns:1fr 1fr}body.v6 .run-row{grid-template-columns:110px 1fr 1fr}body.v6 .run-note{grid-column:1/3}body.v6 .event-budget-breakdown{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body.v6 .inspiration-callout-inner{align-items:flex-start;flex-direction:column;padding:30px 24px}body.v6 .idea-board-toolbar{grid-template-columns:1fr}body.v6 .idea-board-grid{grid-template-columns:1fr}body.v6 .floor-plan{height:520px}body.v6 .floor-table{transform:scale(.9);transform-origin:top left}body.v6 .run-row,body.v6 .event-budget-row{grid-template-columns:1fr 1fr}body.v6 .run-note{grid-column:1/-1}body.v6 .run-remove,body.v6 .event-budget-row>button{grid-column:2}body.v6 .event-budget-breakdown{grid-template-columns:1fr}body.v6 .studio-live-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){body.v6 .run-row,body.v6 .event-budget-row,body.v6 .studio-live-grid{grid-template-columns:1fr}body.v6 .run-note,body.v6 .run-remove,body.v6 .event-budget-row>button{grid-column:auto}body.v6 .floor-plan{height:460px}}

body.v6 .budget-summary{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#d8c8b8;border:1px solid #d8c8b8}
body.v6 .budget-summary>div{background:#fffdf9;padding:18px;min-height:105px;display:flex;flex-direction:column;justify-content:end}
body.v6 .budget-summary>div:first-child{grid-column:1/-1}
body.v6 .budget-summary span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:#6e7772}
body.v6 .budget-summary strong{font:500 28px/1.1 Georgia,serif;margin-top:6px}
body.v6 .visual-guide-grid>.inspiration-tile{min-height:360px}
body.v6 .visual-guide-grid>.inspiration-tile>a{min-height:360px}
@media(max-width:480px){body.v6 .budget-summary{grid-template-columns:1fr}body.v6 .budget-summary>div:first-child{grid-column:auto}}
body.v6 .event-budget-breakdown small{font-size:9px;color:#7c8580;margin-top:5px;line-height:1.35}

/* V7 Vendor Decisions, Payments & Backup */
body.v7 .vendor-studio-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
body.v7 .vendor-quick-add{background:#fffdf9;border:1px solid #ddcfc0;padding:26px}
body.v7 .vendor-toolbar{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:14px;align-items:end;margin:22px 0}
body.v7 .vendor-card{border:1px solid #e1d6ca;background:#fffdf9;padding:24px;margin-top:14px;box-shadow:0 9px 24px rgba(34,43,39,.04)}
body.v7 .vendor-card-head{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:start;border-bottom:1px solid #eadfd5;padding-bottom:18px;margin-bottom:18px}
body.v7 .vendor-card-head small{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:9px;color:#8d6d50;font-weight:800}
body.v7 .vendor-card-head h3{font:500 28px/1.1 Georgia,serif;margin:5px 0 0}
body.v7 .vendor-compare{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#69736e;display:flex;gap:7px;align-items:center}
body.v7 .vendor-price{text-align:right;min-width:120px}.vendor-price span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#747d78}.vendor-price strong{font:500 24px/1 Georgia,serif;display:block;margin-top:6px}
body.v7 .vendor-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
body.v7 .vendor-fields .field{margin:0}.vendor-check{display:flex;align-items:end}.vendor-check label{min-height:42px;display:flex!important;align-items:center;gap:8px;border:1px solid #d8ccbf;padding:10px 12px;background:#fff}
body.v7 .vendor-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.danger-soft{color:#7c433a!important}
body.v7 .vendor-compare-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9cabb;border:1px solid #d9cabb;margin-top:18px}
body.v7 .vendor-compare-card{background:#fffdf9;padding:22px;min-width:0}.vendor-compare-card>small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#9a724d}.vendor-compare-card h3{font:500 24px/1.12 Georgia,serif;margin:7px 0 16px}.vendor-compare-card dl{margin:0}.vendor-compare-card dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #eee4da;padding:8px 0}.vendor-compare-card dt{font-size:10px;color:#737c77}.vendor-compare-card dd{font-weight:800;font-size:11px;margin:0;text-align:right}.vendor-compare-card p{font-size:12px;color:#626c67;margin:14px 0 0}
body.v7 .payment-toolbar{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:14px;align-items:end;margin:22px 0}
body.v7 .payment-list{display:grid;gap:10px}.payment-row{display:grid;grid-template-columns:130px 1.4fr 1fr 1fr .8fr .9fr .7fr .9fr 1fr 1.2fr auto;gap:9px;align-items:end;background:#fffdf9;border:1px solid #e1d6ca;padding:14px}.payment-row .field{margin:0}.payment-row .field label{font-size:8px}.payment-status-mark{align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #eadfd5;padding-right:12px}.payment-status-mark span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#806145;font-weight:800}.payment-status-mark strong{font:500 22px/1.1 Georgia,serif;margin-top:5px}.payment-row.overdue{border-left:4px solid #a55b4f}.payment-row.paid{border-left:4px solid #6c8976;background:#f9fbf8}.payment-note{min-width:0}.payment-remove{height:42px;min-width:42px;border:1px solid #dbcbbd!important;background:#f6eee6!important;color:#7a4038!important}
body.v7 .backup-panel{display:grid;grid-template-columns:1fr 1fr;gap:22px}.backup-card{background:#fffdf9;border:1px solid #ddcfc0;padding:30px}.backup-card h2{font-size:31px;margin-top:6px}.backup-card p{color:#66706b}.backup-card.danger{border-color:#d9bdb7;background:#fff9f7}.backup-status{margin-top:18px;font-weight:700;color:#56655e}.backup-steps{counter-reset:backup;display:grid;gap:12px;margin-top:24px}.backup-steps div{padding:18px 18px 18px 58px;position:relative;background:#f8f3ed;border:1px solid #e8ddd2}.backup-steps div:before{counter-increment:backup;content:counter(backup);position:absolute;left:18px;top:16px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#23352f;color:#fff;font-size:10px;font-weight:800}
body.v7 .contract-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d8c8b8;border:1px solid #d8c8b8}.contract-check-grid div{background:#fffdf9;padding:22px}.contract-check-grid h3{font:500 21px/1.2 Georgia,serif;margin:6px 0}.contract-check-grid p{font-size:13px;color:#626b67;margin:0}
body.v7 .studio-live-grid{grid-template-columns:repeat(5,1fr)}
@media(max-width:1250px){body.v7 .vendor-fields{grid-template-columns:repeat(3,1fr)}body.v7 .payment-row{grid-template-columns:120px 1.4fr 1fr 1fr .8fr .9fr}.payment-row .field:nth-of-type(n+6){grid-column:auto}.payment-note{grid-column:2/5}.payment-remove{grid-column:6}body.v7 .studio-live-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1000px){body.v7 .vendor-studio-intro{grid-template-columns:1fr}body.v7 .vendor-fields{grid-template-columns:1fr 1fr}body.v7 .vendor-compare-grid{grid-template-columns:1fr 1fr}body.v7 .payment-row{grid-template-columns:120px 1fr 1fr}.payment-note{grid-column:2/4}.payment-remove{grid-column:3}.backup-panel{grid-template-columns:1fr}.contract-check-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body.v7 .vendor-toolbar,body.v7 .payment-toolbar{grid-template-columns:1fr}body.v7 .vendor-card-head{grid-template-columns:1fr 1fr}.vendor-card-head>div:nth-child(2){grid-column:1/-1;grid-row:1}.vendor-compare{grid-row:2}.vendor-price{grid-row:2}.vendor-fields{grid-template-columns:1fr}.vendor-compare-grid{grid-template-columns:1fr}.payment-row{grid-template-columns:1fr 1fr}.payment-status-mark{grid-column:1/-1;border-right:0;border-bottom:1px solid #eadfd5;padding:0 0 10px}.payment-note{grid-column:1/-1}.payment-remove{grid-column:2}.contract-check-grid{grid-template-columns:1fr}body.v7 .studio-live-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){body.v7 .payment-row,body.v7 .studio-live-grid{grid-template-columns:1fr}.payment-remove{grid-column:auto}.vendor-card{padding:18px}.backup-card{padding:22px}}

/* V8 task & responsibility planner */
.task-add-grid{grid-template-columns:minmax(260px,2fr) repeat(5,minmax(150px,1fr))}.task-title-field{grid-column:auto}.task-filters{display:grid;grid-template-columns:1.5fr repeat(4,minmax(150px,1fr));gap:14px;margin:18px 0}.task-list{display:grid;gap:14px}.task-row{background:#fff;border:1px solid rgba(75,64,47,.14);border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(66,53,34,.05)}.task-row.overdue{border-color:rgba(151,62,50,.4);box-shadow:inset 4px 0 0 #a85f52}.task-row.due-soon:not(.overdue){box-shadow:inset 4px 0 0 #b58b3e,0 10px 30px rgba(66,53,34,.05)}.task-row.done{opacity:.72;background:#f8f7f1}.task-row-head{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:14px}.task-check input{width:22px;height:22px}.task-row-head small{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.task-title-edit{border:0!important;background:transparent!important;padding:0!important;font-family:var(--serif);font-size:1.28rem;font-weight:600;color:var(--ink);box-shadow:none!important;width:100%}.task-row.done .task-title-edit{text-decoration:line-through}.task-badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(75,64,47,.15);padding:7px 10px;border-radius:999px;background:#f7f4ee;white-space:nowrap}.task-row.overdue .task-badge{background:#fff1ee;color:#8f4439;border-color:#e6b5ad}.task-fields{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px}.task-notes{margin-top:12px}.task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.task-meta span{font-size:.75rem;background:#f4f1ea;border-radius:999px;padding:6px 9px;color:var(--muted)}.task-meta button{margin-left:auto}.planning-stats.five{grid-template-columns:repeat(5,1fr)}
@media(max-width:1100px){.task-add-grid,.task-fields{grid-template-columns:repeat(3,1fr)}.task-filters{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.task-add-grid,.task-fields,.task-filters,.planning-stats.five{grid-template-columns:1fr}.task-row-head{grid-template-columns:30px minmax(0,1fr)}.task-badge{grid-column:2;justify-self:start}.task-meta button{margin-left:0;width:100%}}

/* ============================================================
   WeddingIdea.ca V9 — navigation + documents & notes
   ============================================================ */
body.v9 .nav-links{gap:10px}
body.v9 .nav-group{position:relative;display:flex;align-items:center}
body.v9 .nav-drop-toggle{appearance:none;border:0;background:transparent;color:var(--ink);padding:11px 8px;font-size:12px;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;gap:5px}
body.v9 .nav-drop-toggle:hover,body.v9 .nav-group.open .nav-drop-toggle{color:var(--gold-deep)}
body.v9 .nav-drop-toggle:after{content:"⌄";font-size:11px;line-height:1;transition:transform .18s ease}
body.v9 .nav-group.open .nav-drop-toggle:after{transform:rotate(180deg)}
body.v9 .nav-dropdown{display:none;position:absolute;z-index:90;top:100%;left:0;min-width:280px;padding:12px;background:#fff;border:1px solid var(--line);box-shadow:0 22px 60px rgba(23,39,37,.15);border-radius:4px}
body.v9 .nav-dropdown.wide{width:570px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
body.v9 .nav-group.open .nav-dropdown,body.v9 .nav-group:hover .nav-dropdown,body.v9 .nav-group:focus-within .nav-dropdown{display:block}
body.v9 .nav-group.open .nav-dropdown.wide,body.v9 .nav-group:hover .nav-dropdown.wide,body.v9 .nav-group:focus-within .nav-dropdown.wide{display:grid}
body.v9 .nav-dropdown a{display:block;padding:9px 10px;text-decoration:none;border-radius:2px;color:var(--ink)}
body.v9 .nav-dropdown a:after{display:none!important}
body.v9 .nav-dropdown a:hover{background:var(--cream);color:var(--gold-deep)}
body.v9 .nav-dropdown b{display:block;font-size:12px;line-height:1.25}
body.v9 .nav-dropdown span{display:block;color:var(--muted);font-size:10px;line-height:1.35;margin-top:2px;font-weight:500}
body.v9 .footer-grid{grid-template-columns:1.45fr repeat(5,minmax(0,1fr));gap:28px}
body.v9 .footer h3{font-size:15px}
body.v9 .footer li{margin:6px 0}
body.v9 .footer a{font-size:12px}
body.v9 .records-search{max-width:560px;margin-top:20px}
body.v9 .records-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 2px;border-top:1px solid var(--line);padding-top:20px}
body.v9 .records-tab{border:1px solid var(--line-dark);background:#fff;padding:10px 18px;border-radius:999px;color:var(--ink);font-weight:800;font-size:12px}
body.v9 .records-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}
body.v9 .records-create-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:24px;margin-top:24px}
body.v9 .records-explainer{background:#182a27;color:#edf2ef;padding:34px;border-radius:3px;align-self:stretch}
body.v9 .records-explainer h2{color:#fff;font-size:30px}
body.v9 .records-explainer p,body.v9 .records-explainer li{color:#c9d2ce}
body.v9 .records-explainer .eyebrow{color:#d4ad81}
body.v9 .records-list{display:grid;gap:18px;margin-top:22px}
body.v9 .record-card{background:#fff;border:1px solid #e4d7c8;padding:24px;border-radius:3px;box-shadow:0 10px 30px rgba(36,45,41,.04)}
body.v9 .record-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
body.v9 .record-card-head h3{font:500 27px/1.15 Georgia,"Times New Roman",serif;margin:3px 0 4px}
body.v9 .record-card-head p{margin:0;color:var(--muted);font-size:12px}
body.v9 .record-type{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:9px;color:var(--gold-deep)}
body.v9 .record-status{white-space:nowrap;background:var(--sage);border:1px solid #dce4db;color:#34423f;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}
body.v9 .record-status.alert{background:#fff0ed;border-color:#f0c8be;color:#9b4330}
body.v9 .record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
body.v9 .empty-records{border:1px dashed var(--line-dark);background:rgba(255,255,255,.65);padding:30px;text-align:center;color:var(--muted)}
body.v9 .note-card textarea{min-height:120px}
@media(max-width:1120px){
  body.v9 .footer-grid{grid-template-columns:1.25fr repeat(3,1fr)}
  body.v9 .footer-grid>div:nth-child(5),body.v9 .footer-grid>div:nth-child(6){margin-top:10px}
}
@media(max-width:920px){
  body.v9 .nav-group{display:block}
  body.v9 .nav-drop-toggle{width:100%;justify-content:space-between;padding:12px 10px;text-align:left}
  body.v9 .nav-dropdown,body.v9 .nav-dropdown.wide{position:static;width:auto;min-width:0;box-shadow:none;border:0;border-left:2px solid var(--gold-pale);border-radius:0;margin:0 0 6px 10px;padding:4px 0 4px 8px;background:transparent;grid-template-columns:1fr!important}
  body.v9 .nav-group:hover .nav-dropdown:not(.open-by-click),body.v9 .nav-group:focus-within .nav-dropdown:not(.open-by-click){display:none}
  body.v9 .nav-group.open .nav-dropdown{display:block!important}
  body.v9 .nav-dropdown a{padding:9px 10px}
  body.v9 .nav-dropdown span{display:none}
  body.v9 .records-create-grid{grid-template-columns:1fr}
  body.v9 .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  body.v9 .record-card-head{display:block}
  body.v9 .record-status{display:inline-block;margin-top:10px}
  body.v9 .record-actions{display:grid;grid-template-columns:1fr}
  body.v9 .footer-grid{grid-template-columns:1fr}
  body.v9 .records-tabs{display:grid;grid-template-columns:1fr}
}
body.v9 .nav-dropdown-right{left:auto;right:0}

/* ============================================================
   WeddingIdea.ca V9.1 — navigation + Planning Studio UX refinement
   ============================================================ */
body.v9-1 .nav-drop-toggle:focus-visible,
body.v9-1 .menu-btn:focus-visible,
body.v9-1 .nav-dropdown a:focus-visible,
body.v9-1 .nav-cta:focus-visible{outline:3px solid rgba(169,122,70,.34);outline-offset:3px}
body.v9-1 .nav-group.current-section>.nav-drop-toggle{color:var(--gold-deep)}
body.v9-1 .nav-group.current-section>.nav-drop-toggle:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold);margin-right:1px}
body.v9-1 .nav-dropdown a[aria-current="page"]{background:#f7f0e8;color:var(--gold-deep);box-shadow:inset 2px 0 0 var(--gold)}
body.v9-1 .utility-inner a[aria-current="page"],body.v9-1 .footer a[aria-current="page"]{color:#fff;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c9a77f}
body.v9-1 .nav-cta[aria-current="page"]{box-shadow:0 0 0 2px rgba(157,114,67,.24)}
body.v9-1.nav-open{overflow:hidden}

body.v9-1 .studio-next-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;margin-top:28px;padding:24px 26px;background:#f7f0e8;border:1px solid #e0d1bf;border-left:4px solid #a97a46}
body.v9-1 .studio-next-card h3{font-size:29px;margin:5px 0 7px}
body.v9-1 .studio-next-card p{margin:0;max-width:760px;color:var(--muted)}
body.v9-1 .studio-next-card .btn{margin:0;white-space:nowrap}
body.v9-1 .studio-status-groups{display:grid;gap:26px;margin-top:34px}
body.v9-1 .studio-status-group{border-top:1px solid rgba(255,255,255,.22);padding-top:20px}
body.v9-1 .studio-status-heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start;margin-bottom:12px}
body.v9-1 .studio-status-heading>span{font:500 13px/1 Georgia,serif;color:#d8b58f;padding-top:4px}
body.v9-1 .studio-status-heading h3{font-size:22px;color:#fff;margin:0 0 4px}
body.v9-1 .studio-status-heading p{font-size:11px;color:#bfc9c5;margin:0}
body.v9-1 .studio-status-group .studio-live-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}
body.v9-1 .studio-status-group .studio-live-card{min-height:132px;padding:18px}
body.v9-1 .studio-status-group .studio-live-card strong{font-size:24px}
body.v9-1 .studio-lane-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#d8c8b8;border:1px solid #d8c8b8;margin-top:30px}
body.v9-1 .studio-lane-grid a{position:relative;min-height:210px;background:#fffdf9;padding:26px 52px 26px 26px;text-decoration:none}
body.v9-1 .studio-lane-grid a:hover{background:#fff}
body.v9-1 .studio-lane-grid span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#9d7243;margin-bottom:40px}
body.v9-1 .studio-lane-grid b{display:block;font:500 24px/1.15 "Iowan Old Style",Baskerville,Georgia,serif;margin-bottom:10px}
body.v9-1 .studio-lane-grid p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
body.v9-1 .studio-lane-grid i{position:absolute;right:24px;top:26px;font-style:normal;color:#9d7243;font-size:20px}

/* Switch to the compact menu before the desktop navigation starts to crowd. */
@media(max-width:1180px){
  body.v9-1 .menu-btn{display:block}
  body.v9-1 .nav-links{display:none;position:absolute;left:22px;right:22px;top:107px;z-index:120;background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px 14px 18px;box-shadow:0 24px 70px rgba(23,39,37,.18);flex-direction:column;align-items:stretch;gap:2px;max-height:calc(100dvh - 122px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  body.v9-1 .nav-links.open{display:flex}
  body.v9-1 .nav-links>a{padding:11px 10px}
  body.v9-1 .nav-links a:after{display:none}
  body.v9-1 .nav-group{display:block}
  body.v9-1 .nav-drop-toggle{width:100%;justify-content:space-between;padding:12px 10px;text-align:left}
  body.v9-1 .nav-dropdown,body.v9-1 .nav-dropdown.wide{position:static;width:auto;min-width:0;box-shadow:none;border:0;border-left:2px solid var(--gold-pale);border-radius:0;margin:0 0 7px 10px;padding:4px 0 4px 8px;background:transparent;grid-template-columns:1fr!important}
  body.v9-1 .nav-group:hover .nav-dropdown:not(.open-by-click),body.v9-1 .nav-group:focus-within .nav-dropdown:not(.open-by-click){display:none}
  body.v9-1 .nav-group.open .nav-dropdown,body.v9-1 .nav-group.open .nav-dropdown.wide{display:block!important}
  body.v9-1 .nav-dropdown a{padding:10px}
  body.v9-1 .nav-dropdown span{display:none}
  body.v9-1 .nav-cta{margin-top:8px;text-align:center;width:100%}
  body.v9-1 .nav-group.current-section>.nav-drop-toggle:before{display:none}
}
@media(max-width:920px){
  body.v9-1 .nav-links{top:107px}
}
@media(max-width:760px){
  body.v9-1 .studio-next-card{grid-template-columns:1fr;padding:22px}
  body.v9-1 .studio-next-card .btn{width:100%}
  body.v9-1 .studio-status-group .studio-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.v9-1 .studio-lane-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  body.v9-1 .nav-links{top:95px;left:13px;right:13px;max-height:calc(100dvh - 108px)}
}
@media(max-width:480px){
  body.v9-1 .studio-status-group .studio-live-grid{grid-template-columns:1fr}
  body.v9-1 .studio-status-heading{grid-template-columns:28px 1fr}
}
@media(max-width:900px){
  body.v9-1 .tone-panel{margin:56px 0 0;padding:44px 22px}
}
/* Prevent intrinsic image/text widths from forcing editorial grids wider than the viewport. */
body.v9-1 .guide-layout>*,body.v9-1 .editorial-split>*,body.v9-1 .season-grid>*,body.v9-1 .error-grid>*{min-width:0}
body.v9-1 input[type="file"]{width:100%;max-width:100%;min-width:0}
@media(max-width:900px){
  body.v9-1 .editorial-split,body.v9-1 .error-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:640px){
  body.v9-1 .season-grid{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:1000px){body.v9-1 .backup-panel{grid-template-columns:minmax(0,1fr)}}
body.v9-1 .nav-drop-toggle:after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transform-origin:center;margin:-3px 1px 0 5px;transition:transform .18s ease}
body.v9-1 .nav-group.open .nav-drop-toggle:after{transform:rotate(225deg);margin-top:3px}
/* Disclosure behavior: keyboard focus alone does not force a closed dropdown back open. */
body.v9-1 .nav-group:not(.open):not(:hover) .nav-dropdown{display:none}
