
:root{
 --ink:#180d0b; --black:#0c0706; --black2:#17100d;
 --paper:#ead3aa; --paper2:#f3e1bd; --cream:#fff2d4;
 --blood:#8e1418; --blood2:#5e0b0e; --gold:#b18249; --line:#6f4933;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#080504}
body{
 margin:0;background:#080504;color:var(--ink);
 font-family:Georgia,"Times New Roman",serif;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.menu-btn{display:none}
.fade-up{opacity:1!important;transform:none!important}

/* SITE FRAME — completely different structure */
.site-header{
 position:sticky;top:0;z-index:1000;
 background:#0d0706;
 border-bottom:1px solid #6f4933;
 box-shadow:0 6px 22px rgba(0,0,0,.42);
}
.header-inner{
 width:min(1240px,calc(100% - 24px));height:78px;margin:auto;
 display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand-mini{display:flex;align-items:center;gap:12px;color:#f1dec1}
.brand-mini img{
 width:62px;height:62px;object-fit:contain;
 background:#ead3aa;padding:4px;border-radius:50%;
 border:1px solid #8b6244;box-shadow:0 0 0 3px rgba(255,255,255,.03)
}
.brand-mini strong{font-size:1.1rem;font-weight:500}
.nav{display:flex;align-items:center;gap:22px;color:#e7d2b4;font-size:.88rem}
.nav a{padding:28px 0;position:relative}
.nav a:after{
 content:"";position:absolute;left:0;right:100%;bottom:20px;height:1px;
 background:var(--blood);transition:.2s
}
.nav a:hover:after,.nav a.active:after{right:0}
.nav .cta-nav{
 padding:10px 16px;border:1px solid #a71b20;border-radius:999px;
 background:#5e0b0e;color:#fff0da
}
.nav .cta-nav:after{display:none}

/* Everything after header lives in central parchment book-page */
main{
 width:min(1180px,calc(100% - 150px));
 margin:0 auto;
 position:relative;
 background:
  linear-gradient(rgba(241,218,180,.94),rgba(241,218,180,.94)),
  url("assets/parchment.png") center/720px repeat;
 box-shadow:0 0 0 1px rgba(117,74,45,.48),0 0 46px rgba(0,0,0,.65);
 overflow:visible;
}

/* continuous left/right gothic rails built from original ornate image */
main:before,main:after{
 content:"";position:absolute;top:0;bottom:0;width:125px;z-index:10;
 pointer-events:none;
 background-image:
   linear-gradient(rgba(8,5,4,.05),rgba(8,5,4,.05)),
   url("assets/hero-bg.png");
 background-repeat:repeat-y;
 background-size:1536px auto;
 filter:saturate(.92) contrast(1.08);
}
main:before{
 left:-125px;background-position:left top;
 box-shadow:inset -28px 0 28px -28px rgba(0,0,0,.65)
}
main:after{
 right:-125px;background-position:right top;
 box-shadow:inset 28px 0 28px -28px rgba(0,0,0,.65)
}

/* blood-ink drip spine on both rails */
main .section:before, main .page-hero:before{
 content:"";position:absolute;top:0;bottom:0;left:14px;width:2px;
 background:
  linear-gradient(to bottom,transparent 0 4%,#7e1014 5% 32%,transparent 35% 43%,#7e1014 44% 72%,transparent 76%);
 opacity:.55;z-index:0;
}
main .section:after, main .page-hero:after{
 content:"";position:absolute;top:0;bottom:0;right:14px;width:2px;
 background:
  linear-gradient(to bottom,#7e1014 0 20%,transparent 22% 33%,#7e1014 34% 61%,transparent 64% 73%,#7e1014 74% 100%);
 opacity:.48;z-index:0;
}

/* HERO */
.hero{
 min-height:780px;display:flex;align-items:center;justify-content:center;
 position:relative;
 background:
  linear-gradient(rgba(239,213,171,.22),rgba(239,213,171,.22)),
  url("assets/hero-bg.png") center/cover no-repeat;
 border-bottom:7px solid #100907;
}
.hero-card{
 width:min(700px,82%);padding:24px 44px 34px;text-align:center;position:relative;z-index:20;
 background:rgba(244,224,187,.91);
 border:1px solid rgba(92,54,32,.55);
 box-shadow:0 18px 50px rgba(0,0,0,.34);
}
.hero-card:before,.hero-card:after{
 content:"";position:absolute;width:78px;height:78px;opacity:.7
}
.hero-card:before{left:11px;top:11px;border-left:2px solid var(--blood);border-top:2px solid var(--blood)}
.hero-card:after{right:11px;bottom:11px;border-right:2px solid var(--blood);border-bottom:2px solid var(--blood)}
.hero-logo{width:min(390px,74%);margin:0 auto}
.hero-divider{
 display:flex;align-items:center;justify-content:center;gap:10px;color:var(--blood);margin:2px auto 10px
}
.hero-divider:before,.hero-divider:after{content:"";height:1px;width:80px;background:linear-gradient(90deg,transparent,var(--blood))}
.hero-divider:after{background:linear-gradient(90deg,var(--blood),transparent)}
.hero h1{
 font-family:"Brush Script MT","Segoe Script",cursive;
 color:var(--blood);font-size:clamp(2.7rem,5vw,4.8rem);
 font-weight:500;line-height:.92;margin:0 0 18px
}
.hero p{font-size:1.02rem;line-height:1.64;margin:0 auto 22px;max-width:600px}

/* SECTIONS */
.container{width:min(980px,calc(100% - 70px));margin:auto;position:relative;z-index:20}
.section{
 padding:64px 0;position:relative;
 background:
  linear-gradient(rgba(244,224,187,.94),rgba(239,214,173,.94)),
  url("assets/parchment.png") center/720px repeat;
 border-bottom:7px solid #120b09;
}
.section.soft-parchment{background:
 linear-gradient(rgba(247,230,200,.94),rgba(237,209,165,.94)),
 url("assets/parchment.png") center/720px repeat}
.section.dark-section{
 color:#f4e2c5;
 background:
  radial-gradient(circle at 50% 0,rgba(126,16,20,.18),transparent 35%),
  linear-gradient(rgba(16,9,8,.97),rgba(23,12,10,.97)),
  url("assets/parchment.png") center/680px repeat
}
.section-title{
 text-align:center;font-family:"Brush Script MT","Segoe Script",cursive;
 font-size:clamp(2.25rem,4.3vw,3.7rem);font-weight:500;
 margin:0 0 6px;color:#1d100d
}
.dark-section .section-title{color:#f1ddbc}
.section-title:after{
 content:"— ✦ ◖ ● ◗ ✦ —";display:block;font-family:Georgia,serif;
 font-size:.68rem;letter-spacing:.24em;color:var(--blood);margin:9px auto 0
}
.section-sub{max-width:700px;margin:0 auto 34px;text-align:center;font-style:italic;line-height:1.62}
.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--blood);font-size:.72rem;font-weight:bold}
.ornament{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--blood);margin:10px auto 20px}
.ornament:before,.ornament:after{content:"";height:1px;width:120px;background:linear-gradient(90deg,transparent,var(--blood))}
.ornament:after{background:linear-gradient(90deg,var(--blood),transparent)}
.intro-panel{max-width:860px;margin:auto;padding:18px 28px;text-align:center;background:transparent}
.intro-panel p{line-height:1.76;font-size:1rem}
.callout{color:var(--blood);font-size:1.15rem!important;font-weight:bold}

/* gothic black service cards */
.edge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.edge-card{
 background:linear-gradient(#1a100d,#0d0807);
 color:#f4e0c0;border:1px solid #76513a;padding:24px 18px 20px;
 text-align:center;position:relative;box-shadow:0 12px 25px rgba(0,0,0,.21)
}
.edge-card:before{content:"";position:absolute;inset:7px;border:1px solid rgba(181,136,93,.28);pointer-events:none}
.edge-icon{width:62px;height:62px;margin:0 auto 14px;border:1px solid #b88c64;border-radius:50%;display:grid;place-items:center;color:#ebcfa6;font-size:1.7rem}
.edge-card h3{color:#fff0d0;margin:.4rem 0;font-size:1.12rem}
.price{color:#fff;text-align:center;margin:.3rem 0 .9rem;font-weight:bold}
.edge-card p{line-height:1.56;min-height:90px}
.edge-card .btn{width:100%;position:relative;z-index:2}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:10px 20px;border-radius:999px;border:1px solid var(--blood);font-size:.77rem;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:.2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(80,10,12,.22)}
.btn-primary{background:var(--blood);color:#fff0d8}
.btn-ghost{background:#160d0b;color:#f5dfbd;border-color:#704733}
.btn-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.creation{background:#130c09;border:1px solid #704833;padding:9px;box-shadow:0 12px 25px rgba(0,0,0,.24)}
.creation-placeholder{aspect-ratio:4/5;display:grid;place-items:center;text-align:center;padding:18px;background:radial-gradient(circle at 50% 30%,rgba(142,20,24,.26),transparent 33%),linear-gradient(145deg,#281512,#0e0907);border:1px solid rgba(228,185,144,.25);color:#d9b89b}
.creation h3{color:#f2ddbb;margin:12px 5px 3px}.creation small{color:#b89a7c;margin:0 5px 10px;display:block}
.center-cta{text-align:center;margin-top:30px}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.step{padding:22px 16px;background:rgba(244,224,187,.9);border:1px solid rgba(87,49,29,.38);box-shadow:0 8px 18px rgba(30,10,7,.08)}
.dark-section .step{background:#190f0c;border-color:#684230;color:#f2dfc0}
.step-num{font-size:2rem;color:var(--blood);line-height:1;margin-bottom:9px}
.dark-section .step-num{color:#d49190}
.step h3{color:var(--blood);font-size:1.02rem}.dark-section .step h3{color:#f3dfc2}
.step p{line-height:1.52}

/* internal page hero */
.page-hero{
 padding:105px 0 65px;text-align:center;position:relative;color:#f6e2c1;
 background:linear-gradient(rgba(14,7,6,.58),rgba(26,10,9,.5)),url("assets/hero-bg.png") center/cover no-repeat;
 border-bottom:7px solid #110a08
}
.page-hero h1{font-family:"Brush Script MT","Segoe Script",cursive;color:#f6e1bf;font-size:clamp(2.6rem,5vw,4.6rem);font-weight:500;margin:0 0 10px}
.page-hero p{max-width:720px;margin:auto;line-height:1.65;font-style:italic}.page-hero .eyebrow{color:#d9aaa7}

/* content panels */
.content-card{max-width:880px;margin:auto;padding:40px 44px;background:rgba(244,224,187,.96);border:1px solid rgba(82,46,28,.48);box-shadow:0 14px 34px rgba(0,0,0,.14);position:relative}
.content-card:before{content:"";position:absolute;inset:9px;border:1px solid rgba(142,20,24,.2);pointer-events:none}
.content-card h2,.content-card h3{color:var(--blood)}.content-card p,.content-card li{line-height:1.7}
.content-card h2{border-bottom:1px solid rgba(142,20,24,.2);padding-bottom:7px}

/* shop */
.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.product{background:#140c09;border:1px solid #6f4933;overflow:hidden;color:#efddc0;box-shadow:0 11px 23px rgba(0,0,0,.19)}
.product-img{height:280px;display:grid;place-items:center;text-align:center;padding:22px;background:radial-gradient(circle at 50% 30%,rgba(142,20,24,.28),transparent 34%),linear-gradient(145deg,#281512,#0d0807)}
.product-body{padding:19px}.product h3{margin:0 0 6px;color:#fff0d0}.product .tag{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#cb9c79}.product p{line-height:1.55}

/* forms */
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}
label{font-weight:bold;color:#4d3022}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #9b795c;background:#fff5df;color:#20120e;border-radius:2px}
textarea{min-height:135px;resize:vertical}.checkbox{display:flex;gap:10px;align-items:flex-start}.checkbox input{width:auto;margin-top:4px}
.notice{padding:14px 16px;border-left:3px solid var(--blood);background:rgba(142,20,24,.07);line-height:1.55}

/* FAQ */
.faq-list{max-width:850px;margin:auto;display:grid;gap:9px}.faq-item{background:rgba(244,224,187,.96);border:1px solid rgba(87,49,29,.36);padding:0 18px}
.faq-q{width:100%;text-align:left;background:none;border:0;padding:17px 0;color:#631013;font-weight:bold;font-size:1rem;cursor:pointer;display:flex;justify-content:space-between}
.faq-a{display:none;padding:0 0 17px;line-height:1.64}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}.faq-q span{transition:.2s}

/* CTA */
.cta-band{background:#100907;color:#f5dfbd;text-align:center;padding:46px 20px;border-top:1px solid #7d5138;border-bottom:7px solid #080504;position:relative}
.cta-band h2{font-family:"Brush Script MT","Segoe Script",cursive;font-size:clamp(2.1rem,4vw,3.3rem);font-weight:500;margin:0 0 8px}
.cta-band p{max-width:640px;margin:0 auto 18px;line-height:1.58}.cta-band .btn{background:#5e0b0e;color:#f4dfbd;border-color:#a97c54}

/* footer */
.site-footer{background:#0c0706;color:#d8c0a0;padding:42px 0 22px;border-top:1px solid #704832;position:relative;z-index:100}
.footer-grid{width:min(1120px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:28px}
.footer-brand img{width:132px;background:#ead3aa;border-radius:18px;padding:8px;border:1px solid #7c563d;margin-bottom:10px}.footer-brand p{max-width:410px;line-height:1.6}
.footer-col h4{color:#e1b8a0;margin:0 0 12px}.footer-col a{display:block;margin:8px 0;color:#d6bea0}
.footer-bottom{width:min(1120px,calc(100% - 48px));margin:28px auto 0;border-top:1px solid #37221a;padding-top:18px;font-size:.78rem;color:#9a8069;text-align:center}
.quote-band{margin:28px auto;padding:32px 26px;text-align:center;color:#f2dfbd;background:#150d0a;border:1px solid #704832}
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:24px}.contact-note{padding:18px;background:rgba(142,20,24,.08);border-left:3px solid var(--blood)}
.terms-intro{max-width:840px;margin:0 auto 24px;text-align:center;font-style:italic;color:#55372a}

@media(max-width:980px){
 main{width:min(100% - 70px,1180px)} main:before,main:after{width:35px} main:before{left:-35px} main:after{right:-35px}
 .edge-grid,.steps{grid-template-columns:repeat(2,1fr)} .shop-grid,.gallery-grid{grid-template-columns:1fr 1fr}
 .nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0d0706;padding:18px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-btn{display:block;color:white;background:none;border:0;font-size:1.5rem}
}
@media(max-width:650px){
 main{width:100%} main:before,main:after{display:none}.container{width:min(100% - 24px,980px)}
 .edge-grid,.steps,.shop-grid,.gallery-grid,.form-grid,.footer-grid,.contact-details{grid-template-columns:1fr}.field.full{grid-column:auto}
 .hero-card{width:92%;padding:22px 16px 26px}.hero-logo{width:84%}.section{padding:50px 0}
}

/* ===== v8 seamless manuscript refinement ===== */

/* Make the central manuscript feel continuous instead of boxed */
main{
  background:
    linear-gradient(rgba(239,214,174,.90),rgba(239,214,174,.90)),
    url("assets/parchment.png") center/720px repeat;
}
.hero{
  background:
    linear-gradient(rgba(239,214,174,.12),rgba(239,214,174,.18)),
    url("assets/hero-bg.png") center/cover no-repeat;
  border-bottom:0;
  min-height:720px;
}
.hero-card{
  width:min(760px,88%);
  padding:10px 40px 24px;
  background:
    radial-gradient(ellipse at center,
      rgba(245,225,190,.88) 0%,
      rgba(245,225,190,.74) 52%,
      rgba(245,225,190,.38) 74%,
      rgba(245,225,190,0) 100%);
  border:0;
  box-shadow:none;
  backdrop-filter:none;
}
.hero-card:before,.hero-card:after{display:none}
.hero-logo{width:min(335px,64%);margin:0 auto -4px}
.hero-divider{margin:0 auto 2px}
.hero h1{
  margin:-2px 0 12px;
  font-size:clamp(2.55rem,4.6vw,4.2rem);
  text-shadow:0 1px 0 rgba(255,255,255,.25);
}
.hero p{margin-bottom:18px;max-width:610px}

/* Create soft inked transition into following sections */
.hero:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:95px;
  background:
    linear-gradient(to bottom,transparent 0%,rgba(238,212,170,.52) 42%,rgba(238,212,170,.96) 100%);
  z-index:5;
}

/* Internal sections now sit on the same manuscript, rather than discrete blocks */
.section{
  border-bottom:0;
  background:transparent;
  padding:58px 0;
}
.section.soft-parchment{
  background:
    linear-gradient(rgba(246,226,193,.32),rgba(246,226,193,.24));
}
.section.dark-section{
  margin:18px 34px;
  border:1px solid #5f3b2c;
  background:
    radial-gradient(circle at 50% 0,rgba(142,20,24,.18),transparent 36%),
    linear-gradient(rgba(17,9,8,.96),rgba(23,12,10,.96)),
    url("assets/parchment.png") center/680px repeat;
  box-shadow:0 15px 30px rgba(0,0,0,.18);
}

/* Continuous decorative side vines, roses and red-ink drips */
main:before,main:after{
  width:155px;
  opacity:1;
  background-image:
    linear-gradient(rgba(15,7,6,.08),rgba(15,7,6,.08)),
    url("assets/hero-bg.png");
  background-repeat:repeat-y;
  background-size:1536px auto;
  filter:saturate(1.08) contrast(1.12) brightness(.92);
}
main:before{
  left:-155px;
  background-position:left top;
  box-shadow:inset -30px 0 30px -28px rgba(0,0,0,.72);
}
main:after{
  right:-155px;
  background-position:right top;
  box-shadow:inset 30px 0 30px -28px rgba(0,0,0,.72);
}

/* Secondary vine/ink layer that physically carries between sections */
body:before,body:after{
  content:"";
  position:fixed;
  top:78px;
  bottom:0;
  width:36px;
  z-index:7;
  pointer-events:none;
  opacity:.72;
  background:
    radial-gradient(circle at 50% 8%,#8e1418 0 3px,transparent 4px),
    radial-gradient(circle at 60% 18%,#8e1418 0 2px,transparent 3px),
    radial-gradient(circle at 45% 33%,#8e1418 0 4px,transparent 5px),
    radial-gradient(circle at 55% 49%,#8e1418 0 2px,transparent 3px),
    radial-gradient(circle at 40% 68%,#8e1418 0 3px,transparent 4px),
    radial-gradient(circle at 52% 86%,#8e1418 0 2px,transparent 3px),
    linear-gradient(to bottom,
      transparent 0 3%,#6e0e12 4% 21%,transparent 22% 31%,
      #7f1014 32% 58%,transparent 59% 68%,#6e0e12 69% 92%,transparent 93%);
}
body:before{left:calc(50% - 590px - 126px)}
body:after{right:calc(50% - 590px - 126px)}

/* Add subtle creeping details into the manuscript edge */
.section:before,.section:after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:54px;
  pointer-events:none;
  z-index:1;
  opacity:.34;
  background-image:url("assets/hero-bg.png");
  background-size:1536px auto;
  background-repeat:no-repeat;
}
.section:before{left:0;background-position:left center}
.section:after{right:0;background-position:right center}

/* Ornate separators between major homepage sections */
.section + .section{
  border-top:1px solid rgba(107,64,40,.18);
}
.section + .section:before{
  box-shadow:inset 0 18px 22px -22px rgba(0,0,0,.35);
}
.section-title:after{
  content:"— ✦ ◖ ● ◗ ✦ —";
  letter-spacing:.22em;
  color:var(--blood);
}

/* Cards gain more illustrated-manuscript depth */
.edge-card,.creation,.product,.step,.faq-item,.content-card{
  box-shadow:0 12px 26px rgba(45,17,10,.12);
}
.edge-card{
  border-color:#7c5037;
}
.edge-card:hover,.product:hover,.creation:hover{
  transform:translateY(-4px);
  transition:.2s ease;
}
.content-card{
  background:
    radial-gradient(circle at 10% 10%,rgba(142,20,24,.05),transparent 25%),
    radial-gradient(circle at 92% 88%,rgba(34,20,14,.06),transparent 28%),
    linear-gradient(rgba(245,226,190,.97),rgba(241,217,178,.97)),
    url("assets/parchment.png") center/720px repeat;
}

/* Footer blends into the side rails */
.site-footer{
  box-shadow:0 -10px 26px rgba(0,0,0,.28);
}

@media(max-width:980px){
  main:before,main:after{width:60px}
  main:before{left:-60px}
  main:after{right:-60px}
  body:before,body:after{display:none}
  .section.dark-section{margin:16px 10px}
}
@media(max-width:650px){
  main:before,main:after,.section:before,.section:after{display:none}
  .hero-card{width:94%;padding:8px 18px 20px}
  .hero-logo{width:76%}
  .hero h1{font-size:clamp(2.3rem,10vw,3.4rem)}
  .section{padding:46px 0}
}

/* ===== v9 finishing refinements ===== */

/* Fix hero logo clipping and tighten vertical rhythm */
.hero{
  align-items:flex-start;
  padding-top:34px;
}
.hero-card{
  margin-top:0;
  padding-top:4px;
}
.hero-logo{
  width:min(300px,58%);
  margin:0 auto -8px;
}
.hero-divider{margin:0 auto 0}
.hero h1{
  margin:-4px 0 10px;
}
.hero p{
  margin-bottom:16px;
}

/* Softer, more natural transition to the next section */
.hero:after{
  height:70px;
  background:
    linear-gradient(to bottom,
      transparent 0%,
      rgba(239,214,174,.24) 42%,
      rgba(239,214,174,.76) 78%,
      rgba(239,214,174,.96) 100%);
}

/* Let ornament creep into section edges instead of a foggy wash */
.section{
  overflow:hidden;
}
.section .container:before,
.section .container:after{
  content:"";
  position:absolute;
  top:-18px;
  width:78px;
  height:130px;
  opacity:.34;
  pointer-events:none;
  background-image:url("assets/hero-bg.png");
  background-size:1536px auto;
  background-repeat:no-repeat;
}
.section .container:before{
  left:-48px;
  background-position:left center;
}
.section .container:after{
  right:-48px;
  background-position:right center;
}

/* Vary side-rail artwork by section so it doesn't look like duplicated strips */
main:before, main:after{
  background-repeat:repeat-y;
  background-size:1536px auto;
}
main:before{
  background-position:left 0;
}
main:after{
  background-position:right 180px;
}
.section:nth-of-type(2n):before{
  background-position:left 18%;
  opacity:.46;
}
.section:nth-of-type(2n):after{
  background-position:right 72%;
  opacity:.4;
}
.section:nth-of-type(3n):before{
  background-position:left 63%;
}
.section:nth-of-type(3n):after{
  background-position:right 28%;
}

/* More organic red-ink detail throughout */
.section-title{
  color:#771216;
}
.dark-section .section-title{
  color:#efcfca;
}
.section-title:after{
  color:#8e1418;
  text-shadow:28px 12px 0 rgba(142,20,24,.18),-34px 18px 0 rgba(142,20,24,.14);
}
.eyebrow{
  color:#8e1418;
}
.callout{
  color:#8e1418;
}
.btn-primary{
  background:linear-gradient(#98171c,#741014);
  border-color:#a82025;
}
.btn-primary:hover{
  background:linear-gradient(#a61a20,#821218);
}

/* red ink droplets that vary vertically across long pages */
main{
  background-image:
    radial-gradient(circle at 1.4% 14%,rgba(123,12,16,.78) 0 2px,transparent 3px),
    radial-gradient(circle at 98.7% 22%,rgba(123,12,16,.78) 0 3px,transparent 4px),
    radial-gradient(circle at 2.2% 43%,rgba(123,12,16,.7) 0 2px,transparent 3px),
    radial-gradient(circle at 97.8% 57%,rgba(123,12,16,.7) 0 2px,transparent 3px),
    radial-gradient(circle at 1.7% 76%,rgba(123,12,16,.72) 0 4px,transparent 5px),
    radial-gradient(circle at 98.4% 88%,rgba(123,12,16,.72) 0 3px,transparent 4px),
    linear-gradient(rgba(239,214,174,.90),rgba(239,214,174,.90)),
    url("assets/parchment.png");
  background-position:center,center,center,center,center,center,center,center;
  background-size:auto,auto,auto,auto,auto,auto,auto,720px;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat;
}

/* Slight darkening at section junctions for manuscript depth */
.section + .section{
  box-shadow:inset 0 18px 26px -28px rgba(31,10,7,.6);
}

/* Add small ornamental rose/ink hints to selected sections */
.section:nth-of-type(2n) .section-title:before{
  content:"❦";
  display:inline-block;
  margin-right:10px;
  color:#6b0e12;
  font-family:Georgia,serif;
  font-size:.7em;
}
.section:nth-of-type(2n) .section-title:after{
  margin-top:8px;
}

/* Mobile tuning */
@media(max-width:650px){
  .hero{padding-top:18px}
  .hero-logo{width:72%;margin-bottom:-4px}
  .section .container:before,.section .container:after{display:none}
}

/* ===== v10 cleanup: remove pasted-on rectangular section decorations ===== */
.section .container:before,
.section .container:after{
  display:none !important;
  content:none !important;
  background:none !important;
}

/* Also remove any inner section image blocks that can appear as rectangles */
.section:before,
.section:after{
  background-image:none !important;
}

/* Preserve clean parchment centre while keeping continuous outer gothic rails */
.section{
  background:
    linear-gradient(rgba(244,224,187,.94),rgba(239,214,173,.94)),
    url("assets/parchment.png") center/720px repeat;
}
.section.soft-parchment{
  background:
    linear-gradient(rgba(247,230,200,.94),rgba(237,209,165,.94)),
    url("assets/parchment.png") center/720px repeat;
}

/* Keep refined red line/drip accents only */
.section{
  border-left:1px solid rgba(142,20,24,.22);
  border-right:1px solid rgba(142,20,24,.22);
}
.section-title:before{
  content:"";
  display:inline-block;
  width:26px;
  height:1px;
  background:var(--blood);
  vertical-align:middle;
  margin-right:10px;
  opacity:.45;
}
.section-title:after{
  content:"— ✦ ◖ ● ◗ ✦ —";
  display:block;
  width:auto;
  height:auto;
  background:none;
  margin:9px auto 0;
  color:var(--blood);
}

/* Remove any accidental boxed image effect at section joins */
.section + .section{
  box-shadow:inset 0 14px 24px -28px rgba(31,10,7,.45);
}

/* v11 commission/contact system */
.field small{font-size:.78rem;color:#715645;line-height:1.35}
.form-privacy{font-size:.84rem;color:#664a39;line-height:1.5;margin:0}
.form-privacy a,.checkbox a{color:var(--blood);text-decoration:underline;text-underline-offset:2px}
input[type="file"]{padding:9px;background:rgba(255,245,223,.88)}
.thank-card{text-align:center;max-width:720px}
.thank-symbol{width:64px;height:64px;border:1px solid var(--blood);border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;color:var(--blood);font-size:1.5rem}
.thank-card .btn{margin-top:14px}

/* ===== v12 full shop preview ===== */
.shop-launch-note{display:flex;gap:16px;align-items:flex-start;max-width:850px;margin:0 auto 28px;padding:18px 22px;background:rgba(142,20,24,.07);border-left:3px solid var(--blood);line-height:1.5}
.shop-launch-note>span{color:var(--blood);font-size:1.25rem}.shop-launch-note p{margin:4px 0 0}
.shop-toolbar{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:0 0 30px}
.shop-filter{border:1px solid #76513a;background:#160e0b;color:#f1ddbd;border-radius:999px;padding:9px 16px;cursor:pointer}
.shop-filter.active,.shop-filter:hover{background:var(--blood);border-color:var(--blood)}
.shop-catalog{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.shop-product-card{display:flex;flex-direction:column;background:#150d0a;color:#edd9bb;border:1px solid #704832;box-shadow:0 13px 28px rgba(0,0,0,.19);overflow:hidden}
.shop-product-image{position:relative;min-height:340px;background:radial-gradient(circle at 50% 28%,rgba(142,20,24,.28),transparent 33%),linear-gradient(145deg,#2a1512,#0d0807);display:grid;place-items:center}
.placeholder-art{text-align:center;color:#d7b596}.placeholder-art>span{display:block;font-size:2rem;margin-bottom:10px}.placeholder-art strong{letter-spacing:.06em}.placeholder-art small{display:block;margin-top:9px;color:#9f8068}
.product-ribbon{position:absolute;top:16px;left:0;background:var(--blood);color:#fff0d9;padding:7px 14px;font-size:.7rem;letter-spacing:.09em;text-transform:uppercase}
.shop-product-info{padding:22px;display:flex;flex-direction:column;flex:1}.product-type,.product-detail-type{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#c69a78}.shop-product-info h3{font-size:1.35rem;color:#fff0d0;margin:7px 0}.shop-product-info p{line-height:1.55;flex:1}
.product-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px}.product-card-bottom strong{font-size:1.15rem;color:#fff}
.product-detail-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:38px;align-items:start}
.product-main-placeholder{aspect-ratio:4/5;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;background:radial-gradient(circle at 50% 28%,rgba(142,20,24,.25),transparent 34%),linear-gradient(145deg,#281512,#0c0807);border:1px solid #704832;color:#d8b89a}
.product-main-placeholder>span{font-size:2.2rem;margin-bottom:12px}.product-main-placeholder small{margin-top:10px;color:#a4866e}
.product-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.product-thumbs div{height:80px;background:#1a100d;border:1px solid #704832;color:#b99b80;display:grid;place-items:center;font-size:.7rem;letter-spacing:.12em}
.product-detail-copy{position:relative;padding-top:10px}.inline-ribbon{position:static;display:inline-block;margin-bottom:15px}.product-detail-copy h2{font-size:2rem;color:var(--blood);margin:5px 0}.detail-price{font-size:1.45rem;font-weight:bold;margin-bottom:18px}
.product-detail-copy>p{line-height:1.65}.product-facts{border-top:1px solid rgba(91,54,29,.25);border-bottom:1px solid rgba(91,54,29,.25);margin:22px 0}.product-facts>div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid rgba(91,54,29,.13)}.product-facts>div:last-child{border-bottom:0}.product-facts span{color:#654a39}
.disabled-shop-btn{margin:15px 0 12px}.text-link{display:block;color:var(--blood);text-decoration:underline;text-underline-offset:3px}
.shop-steps .step p{min-height:80px}
@media(max-width:760px){.shop-catalog,.product-detail-grid{grid-template-columns:1fr}.shop-product-image{min-height:300px}.product-card-bottom{align-items:flex-start;flex-direction:column}.product-facts>div{grid-template-columns:1fr;gap:3px}}

/* ===== v13 Square-ready checkout ===== */
.square-buy-disabled{width:100%;margin:16px 0 8px;opacity:.55;cursor:not-allowed;filter:grayscale(.25)}
.square-status{font-size:.8rem;line-height:1.45;color:#715647;margin:0 0 14px}
.square-status span{color:#8e1418;margin-right:5px}
.square-enquiry-btn{width:100%;margin-bottom:12px}
.payment-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 32px}
.payment-method-grid>div{padding:16px;background:rgba(142,20,24,.055);border:1px solid rgba(111,73,51,.25)}
.payment-method-grid strong,.payment-method-grid span{display:block}
.payment-method-grid strong{color:var(--blood);margin-bottom:5px}
.payment-method-grid span{font-size:.86rem;color:#684c3b}
.square-live-btn{width:100%;margin:16px 0 8px}
@media(max-width:650px){.payment-method-grid{grid-template-columns:1fr}}

/* ===== v14 integrated basket ===== */
.basket-link{white-space:nowrap}
#basketCount{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:3px;border-radius:999px;background:var(--blood);color:#fff;font-size:.7rem}
.add-to-basket{width:100%;margin:16px 0 8px}
.basket-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:start}
.basket-panel,.basket-summary{background:rgba(244,224,187,.96);border:1px solid rgba(82,46,28,.48);box-shadow:0 12px 28px rgba(0,0,0,.11)}
.basket-panel{padding:22px}.basket-summary{padding:24px;position:sticky;top:96px}
.basket-empty{text-align:center;padding:36px 18px}
.basket-item{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid rgba(91,54,29,.18)}
.basket-item:last-child{border-bottom:0}
.basket-thumb{height:120px;background:radial-gradient(circle at 50% 30%,rgba(142,20,24,.23),transparent 35%),linear-gradient(145deg,#281512,#0d0807);border:1px solid #704832;color:#d8b89a;display:grid;place-items:center;text-align:center}
.basket-copy h3{margin:5px 0;color:var(--blood)}.basket-copy p{margin:4px 0;color:#684c3b}
.remove-basket-item{border:0;background:none;color:var(--blood);padding:4px 0;text-decoration:underline;cursor:pointer}
.basket-price{font-weight:bold;font-size:1.15rem}
.basket-summary h2{color:var(--blood);margin-top:0}
.summary-line,.summary-total{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(91,54,29,.15)}
.summary-line.muted{font-size:.85rem;color:#705544}
.summary-total{font-size:1.05rem;border-top:1px solid rgba(91,54,29,.28);border-bottom:0;margin-top:10px;padding-top:15px}
.basket-checkout{width:100%;margin:18px 0 8px;opacity:.55;cursor:not-allowed}
.basket-note{font-size:.8rem;line-height:1.45;color:#705544}
@media(max-width:820px){.basket-layout{grid-template-columns:1fr}.basket-summary{position:static}}
@media(max-width:560px){.basket-item{grid-template-columns:85px 1fr}.basket-thumb{height:90px}.basket-price{grid-column:2}}

/* ===== v15 mobile + accessibility ===== */
.skip-link{position:fixed;left:12px;top:-60px;z-index:3000;background:#fff2d4;color:#4f0d10;border:2px solid #8e1418;padding:10px 14px;border-radius:4px;font-weight:bold}
.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d3a24d;outline-offset:3px}
input,select,textarea{font-size:16px}
.menu-btn{min-width:44px;min-height:44px}
.launch-status{max-width:900px;margin:0 auto 28px;padding:18px 20px;background:rgba(142,20,24,.07);border-left:3px solid var(--blood)}
.launch-status strong{color:var(--blood)}
.launch-checklist{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.launch-checklist div{padding:12px;background:rgba(255,245,223,.52);border:1px solid rgba(91,54,29,.18)}
.launch-checklist .ready:before{content:"✓ ";color:#58773f;font-weight:bold}
.launch-checklist .waiting:before{content:"○ ";color:#8e1418;font-weight:bold}
@media(max-width:980px){
 .header-inner{height:auto;min-height:68px;padding:7px 0}
 .nav{top:100%;box-shadow:0 14px 30px rgba(0,0,0,.36);border-top:1px solid rgba(167,122,59,.32)}
 .nav a{padding:12px 2px}
 .nav .cta-nav{width:100%;text-align:center}
}
@media(max-width:650px){
 .brand-mini img{width:48px;height:48px}
 .brand-mini strong{max-width:155px;line-height:1.1}
 .page-hero{padding:82px 0 52px}
 .hero{min-height:620px}
 .hero-card{width:94%;padding:14px 16px 22px}
 .hero-logo{width:min(280px,72%)}
 .hero h1{font-size:clamp(2.25rem,11vw,3.35rem)}
 .hero p{font-size:.95rem;line-height:1.55}
 .btn-row{gap:9px}
 .btn{width:100%;min-height:46px}
 .content-card{padding:30px 20px}
 .launch-checklist{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ===== v16 FAQ reliability fix ===== */
.faq-q{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  cursor:pointer;
}
.faq-q span{
  flex:0 0 auto;
  font-size:1.35rem;
  line-height:1;
  transition:transform .2s ease;
}
.faq-a{display:none}
.faq-item.open .faq-a{display:block}
.faq-item.open .faq-q span{transform:rotate(45deg)}

/* ===== v17 business/legal information ===== */
.legal-information-card address{font-style:normal;line-height:1.8;margin:8px 0 24px}
.legal-information-card h3{margin-top:24px;color:var(--blood)}
.legal-note{font-size:.9rem;opacity:.82}
.trader-details{padding:18px 20px;margin:0 0 26px;border:1px solid rgba(91,54,29,.22);background:rgba(255,245,223,.38)}
.trader-details h2{margin-top:0}
.legal-footer-link{text-align:center;font-size:.75rem;opacity:.72;padding:8px 12px 16px}
.legal-footer-link a{color:inherit}

/* v18 Mystery Date + Goodies */
.mystery-intro{text-align:center;margin-bottom:42px}.mystery-tier-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:26px 0 58px}.mystery-tier{padding:30px;background:rgba(244,224,187,.96);border:1px solid rgba(82,46,28,.48);box-shadow:0 12px 28px rgba(0,0,0,.12)}.featured-tier{border:2px solid var(--blood)}.tier-kicker{font-size:.72rem;letter-spacing:.18em;font-weight:bold;color:var(--blood)}.tier-price{font-family:Georgia,serif;font-size:2.6rem;font-weight:bold;color:var(--blood);margin:8px 0}.mystery-tier ul{padding-left:20px;line-height:1.8;min-height:150px}.mystery-tier .btn{width:100%}.genre-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 55px}.genre-grid div{padding:18px 12px;text-align:center;background:rgba(244,224,187,.92);border:1px solid rgba(82,46,28,.34)}.goodies-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.goodie-card{padding:24px;background:rgba(244,224,187,.95);border:1px solid rgba(82,46,28,.38);text-align:center}.goodie-art{font-size:2rem}.goodie-card h3,.goodie-price{color:var(--blood)}.goodie-price{font-weight:bold;margin:14px 0}.section-lead{text-align:center;max-width:680px;margin:0 auto}@media(max-width:820px){.mystery-tier-grid{grid-template-columns:1fr}.genre-grid,.goodies-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.genre-grid,.goodies-grid{grid-template-columns:1fr}}
