:root {
  --yellow: #ffd633;
  --yellow-soft: #ffe783;
  --blue: #168cff;
  --blue-deep: #0b63c9;
  --gold: #d5a126;
  --gold-dark: #9b6b12;
  --parchment: #fff3d0;
  --ivory: #fffdf5;
  --navy: #10243e;
  --brown: #493018;
  --white: #ffffff;
  --shadow: 0 18px 50px rgba(16,36,62,.14);
  --border: 2px solid rgba(213,161,38,.58);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ivory);
  color: var(--navy);
  font-family: "Segoe UI", Arial, sans-serif;
  line-height: 1.65;
}
img { max-width: 100%; display: block; }
a { color: inherit; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  min-height: 88px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 10px clamp(18px, 4vw, 64px);
  background: rgba(255,253,245,.96);
  border-bottom: 4px solid var(--yellow);
  box-shadow: 0 7px 24px rgba(16,36,62,.10);
  backdrop-filter: blur(14px);
}
.site-header::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -7px;
  height: 3px;
  background: var(--blue);
}
.brand { display: flex; align-items: center; gap: 14px; text-decoration: none; min-width: max-content; }
.brand-logo { width: 62px; height: 62px; border-radius: 50%; object-fit: cover; box-shadow: 0 4px 14px rgba(213,161,38,.28); }
.brand-name { font-family: Georgia, "Times New Roman", serif; font-weight: 800; letter-spacing: .13em; font-size: clamp(1rem, 2vw, 1.35rem); color: var(--brown); }
.main-nav { display: flex; align-items: center; gap: clamp(14px, 2.1vw, 30px); font-weight: 700; }
.main-nav a { text-decoration: none; position: relative; padding: 10px 0; }
.main-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 5px; height: 3px; background: var(--blue); transition: right .2s ease; }
.main-nav a:hover::after, .main-nav a:focus-visible::after { right: 0; }
.menu-toggle { display: none; border: 0; background: transparent; padding: 10px; }
.menu-toggle span { display: block; width: 27px; height: 3px; margin: 5px 0; background: var(--navy); border-radius: 3px; }

.section-frame { position: relative; overflow: hidden; }
.eyebrow { margin: 0 0 10px; color: var(--gold-dark); font-weight: 900; letter-spacing: .2em; font-size: .82rem; }
.eyebrow.blue { color: var(--blue-deep); }
.eyebrow.light { color: var(--yellow); }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; line-height: 1.08; margin-top: 0; }
h2 { font-size: clamp(2.25rem, 4.5vw, 4.4rem); color: var(--navy); }
p { font-size: clamp(1rem, 1.3vw, 1.13rem); }

.hero {
  min-height: calc(100vh - 88px);
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, .7fr);
  align-items: center;
  padding: clamp(70px, 9vw, 130px) clamp(22px, 7vw, 110px);
  background:
    radial-gradient(circle at 14% 20%, rgba(255,214,51,.72), transparent 28%),
    radial-gradient(circle at 90% 10%, rgba(22,140,255,.16), transparent 24%),
    linear-gradient(135deg, var(--ivory), var(--parchment));
  border-bottom: 8px solid var(--yellow);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 2px solid rgba(213,161,38,.52);
  pointer-events: none;
}
.hero-content { position: relative; z-index: 2; max-width: 850px; }
.hero h1 { color: var(--navy); font-size: clamp(4rem, 9vw, 8.4rem); margin: 0 0 18px; letter-spacing: -.045em; }
.hero h1 span { display: block; font-size: .43em; color: var(--gold-dark); letter-spacing: .02em; }
.hero-kicker { font-weight: 800; color: var(--blue-deep); font-size: clamp(1.2rem, 2.2vw, 1.7rem); }
.hero-copy { max-width: 760px; }
.hero-mark { width: min(33vw, 460px); justify-self: center; border-radius: 50%; box-shadow: var(--shadow); transform: rotate(2deg); position: relative; z-index: 1; }
.sunburst { position: absolute; right: 2%; top: 7%; width: 48vw; height: 48vw; max-width: 680px; max-height: 680px; border-radius: 50%; background: repeating-conic-gradient(from 0deg, rgba(255,214,51,.19) 0 5deg, transparent 5deg 11deg); opacity: .8; }

.button-row { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 13px 24px; border-radius: 999px; font-weight: 900; letter-spacing: .04em; text-decoration: none; border: 2px solid transparent; box-shadow: 0 9px 20px rgba(16,36,62,.10); transition: transform .18s ease, box-shadow .18s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 13px 24px rgba(16,36,62,.16); }
.button-primary { background: var(--yellow); color: var(--navy); border-color: var(--gold); }
.button-secondary { background: var(--ivory); color: var(--blue-deep); border-color: var(--blue); }
.button-blue { background: var(--blue); color: white; border-color: var(--blue-deep); }
.button-yellow { background: var(--yellow); color: var(--navy); border-color: #f0b700; }

.welcome, .comic-feature, .next { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: clamp(34px, 6vw, 90px); padding: clamp(70px, 8vw, 120px) clamp(24px, 7vw, 110px); }
.welcome { background: linear-gradient(180deg, var(--ivory), #fff8df); }
.section-copy { max-width: 700px; }
.intro-lines p { font-size: clamp(1.15rem, 1.8vw, 1.42rem); margin: 0 0 18px; }
.leah-stage { position: relative; min-height: 620px; display: grid; place-items: center; }
.leah-stage img { position: relative; z-index: 2; max-height: 700px; object-fit: contain; filter: drop-shadow(0 18px 18px rgba(16,36,62,.18)); }
.blue-ring { position: absolute; width: min(42vw, 540px); aspect-ratio: 1; border-radius: 50%; border: 12px solid var(--blue); box-shadow: 0 0 0 18px rgba(255,214,51,.72), 0 0 0 28px rgba(213,161,38,.28); opacity: .86; }

.comic-feature { background: var(--parchment); border-top: 5px solid var(--blue); border-bottom: 5px solid var(--yellow); }
.comic-art { max-width: 560px; justify-self: center; position: relative; }
.comic-art::before { content: ""; position: absolute; inset: -14px; border: 3px solid var(--gold); transform: rotate(-1.2deg); }
.comic-art img { position: relative; z-index: 2; box-shadow: var(--shadow); }
.product-line { font-weight: 900; color: var(--brown); }
.product-line span { color: var(--blue); margin: 0 5px; }

.next { background: linear-gradient(140deg, #fdf9ed 0%, #fff0b4 60%, #e7f3ff 100%); }
.next-copy { max-width: 720px; }
.coming-label, .coming-soon { display: inline-block; font-weight: 900; letter-spacing: .16em; }
.coming-label { color: var(--gold-dark); margin-bottom: 18px; }
.coming-soon { margin-top: 20px; padding: 9px 16px; background: var(--yellow); border: 2px solid var(--gold); color: var(--navy); transform: rotate(-1.5deg); }
.next-line { font-size: clamp(1.2rem, 2vw, 1.55rem); }
.ring-art { position: relative; }
.ring-art::after { content: ""; position: absolute; inset: 10% -3% -5% 12%; background: var(--blue); z-index: 0; transform: rotate(2deg); opacity: .75; }
.ring-art img { position: relative; z-index: 2; box-shadow: var(--shadow); border: 5px solid var(--gold); }

.from-house { padding: clamp(70px, 8vw, 115px) clamp(24px, 7vw, 110px); background: var(--ivory); }
.section-heading { text-align: center; max-width: 800px; margin: 0 auto 50px; }
.cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1280px; margin: 0 auto; }
.info-card { padding: 34px; background: #fff5c8; border: 2px solid var(--gold); border-radius: 24px; box-shadow: var(--shadow); }
.info-card.blue-card { background: #e9f4ff; border-color: var(--blue); }
.card-icon { font-size: 2.2rem; color: var(--blue); }
.info-card h3 { font-size: 1.55rem; margin: 12px 0; color: var(--brown); }
.info-card a { font-weight: 900; color: var(--blue-deep); text-decoration-thickness: 2px; text-underline-offset: 4px; }

.join { min-height: 720px; display: grid; place-items: center; text-align: center; color: white; }
.join-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.join-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(16,36,62,.08), rgba(16,36,62,.66)); }
.join-content { position: relative; z-index: 2; max-width: 900px; padding: 70px 24px; text-shadow: 0 3px 18px rgba(0,0,0,.38); }
.join h2 { color: white; font-size: clamp(2.7rem, 6vw, 5.6rem); }
.join p { font-size: clamp(1.25rem, 2.5vw, 1.8rem); }
.join .button-row { justify-content: center; }

.site-footer { padding: 38px clamp(24px, 6vw, 90px) 28px; background: var(--navy); color: white; border-top: 6px solid var(--yellow); }
.footer-brand { display: flex; align-items: center; gap: 16px; }
.footer-brand img { width: 74px; height: 74px; border-radius: 50%; }
.footer-brand strong { display: block; font-family: Georgia, serif; letter-spacing: .15em; color: var(--yellow); }
.footer-brand span { color: #dcecff; }
.footer-links { display: flex; flex-wrap: wrap; gap: 18px 26px; margin: 30px 0 20px; }
.footer-links a { color: white; text-underline-offset: 4px; }
.copyright { margin: 0; opacity: .78; font-size: .92rem; }

@media (max-width: 980px) {
  .menu-toggle { display: block; }
  .main-nav { display: none; position: absolute; top: calc(100% + 7px); left: 0; right: 0; background: var(--ivory); padding: 20px 28px 28px; flex-direction: column; align-items: flex-start; border-bottom: 4px solid var(--blue); box-shadow: var(--shadow); }
  .main-nav.open { display: flex; }
  .hero { grid-template-columns: 1fr; text-align: center; }
  .hero-content { margin: 0 auto; }
  .hero-copy { margin-left: auto; margin-right: auto; }
  .hero .button-row { justify-content: center; }
  .hero-mark { width: min(66vw, 410px); margin-top: 48px; }
  .welcome, .comic-feature, .next { grid-template-columns: 1fr; }
  .welcome .section-copy, .next-copy { margin: 0 auto; text-align: center; }
  .welcome .button { margin-top: 10px; }
  .leah-stage { min-height: 540px; }
  .blue-ring { width: min(70vw, 470px); }
  .comic-feature .comic-art { order: 2; }
  .comic-feature .section-copy { text-align: center; margin: 0 auto; }
  .ring-art { max-width: 780px; margin: 0 auto; }
  .cards { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .site-header { min-height: 76px; padding: 8px 14px; }
  .brand-logo { width: 52px; height: 52px; }
  .brand-name { font-size: .92rem; letter-spacing: .09em; }
  .hero { min-height: auto; padding-top: 78px; }
  .hero::before { inset: 9px; }
  .hero h1 { font-size: clamp(3.5rem, 18vw, 5.2rem); }
  .button-row { flex-direction: column; align-items: stretch; }
  .button { width: 100%; }
  .welcome, .comic-feature, .next, .from-house { padding-left: 19px; padding-right: 19px; }
  .leah-stage { min-height: 450px; }
  .leah-stage img { max-height: 520px; }
  .blue-ring { border-width: 8px; box-shadow: 0 0 0 10px rgba(255,214,51,.72), 0 0 0 17px rgba(213,161,38,.28); }
  .join { min-height: 600px; }
  .join-image { object-position: 62% center; }
}

/* Comics collection page */
.main-nav a.active::after { right: 0; }
.collection-hero { min-height: 520px; display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,.38fr); align-items:center; padding:clamp(70px,8vw,115px) clamp(22px,7vw,110px); background:radial-gradient(circle at 14% 20%,rgba(255,214,51,.75),transparent 30%),radial-gradient(circle at 92% 22%,rgba(22,140,255,.20),transparent 27%),linear-gradient(135deg,var(--ivory),var(--parchment)); border-bottom:8px solid var(--yellow); }
.collection-hero-inner { max-width:820px; position:relative; z-index:2; }
.collection-hero h1 { margin:0 0 20px; font-size:clamp(3rem,7vw,6.8rem); color:var(--navy); }
.collection-hero h1 span { display:block; color:var(--blue-deep); }
.collection-kicker { font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.35rem,2.4vw,2rem); font-weight:700; color:var(--brown); }
.collection-mark { width:min(310px,28vw); justify-self:center; border-radius:50%; box-shadow:0 18px 55px rgba(213,161,38,.28); }
.collection-issue { display:grid; grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr); gap:clamp(38px,7vw,100px); align-items:center; padding:clamp(65px,8vw,115px) clamp(22px,7vw,110px); }
.collection-issue.issue-one { background:linear-gradient(135deg,var(--ivory),#fff7df); }
.collection-issue.issue-two { grid-template-columns:minmax(0,1.05fr) minmax(260px,.82fr); background:radial-gradient(circle at 90% 15%,rgba(255,214,51,.42),transparent 25%),linear-gradient(135deg,#eaf5ff,var(--parchment)); border-top:5px solid var(--blue); border-bottom:5px solid var(--yellow); }
.collection-art { max-width:500px; justify-self:center; padding:12px; background:var(--white); border:3px solid var(--gold); box-shadow:var(--shadow); transform:rotate(-1deg); }
.collection-art img { width:100%; height:auto; }
.ring-real { max-width:470px; transform:rotate(1deg); }
.collection-issue h2 { margin-bottom:18px; color:var(--brown); }
.collection-issue h3 { font-size:clamp(1.35rem,2vw,1.8rem); color:var(--blue-deep); }
.issue-number { font-weight:900; letter-spacing:.18em; color:var(--gold-dark); }
.collection-quote { max-width:650px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.2rem,2vw,1.55rem); }
.future-collections { padding:clamp(75px,9vw,130px) 22px; text-align:center; background:radial-gradient(circle at 50% 20%,rgba(255,214,51,.55),transparent 32%),linear-gradient(135deg,var(--parchment),var(--ivory)); }
.future-inner { max-width:850px; margin:auto; padding:clamp(34px,5vw,65px); border:3px solid var(--gold); outline:3px solid rgba(22,140,255,.22); outline-offset:9px; background:rgba(255,253,245,.82); box-shadow:var(--shadow); }
.future-inner h2 { color:var(--blue-deep); }
.future-flourish { margin-top:28px; font-size:1.6rem; color:var(--gold-dark); letter-spacing:.35em; }
@media (max-width: 820px) { .collection-hero { grid-template-columns:1fr; text-align:center; min-height:auto; } .collection-mark { width:180px; margin-top:32px; } .collection-issue,.collection-issue.issue-two { grid-template-columns:1fr; } .issue-two .section-copy { order:2; } .issue-two .collection-art { order:1; } .collection-issue .section-copy { text-align:center; } }

/* My Story page */
.story-intro { display:grid; grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr); gap:clamp(40px,7vw,105px); align-items:center; padding:clamp(70px,8vw,120px) clamp(24px,7vw,110px); background:radial-gradient(circle at 85% 10%,rgba(255,214,51,.55),transparent 26%),linear-gradient(135deg,var(--ivory),var(--parchment)); border-bottom:6px solid var(--yellow); }
.story-intro h1 { font-size:clamp(3.6rem,7vw,7rem); color:var(--navy); margin-bottom:20px; }
.story-lead { font-family:Georgia,"Times New Roman",serif; font-weight:700; color:var(--blue-deep); font-size:clamp(1.3rem,2.1vw,1.8rem); }
.story-photo-wrap { justify-self:center; width:min(100%,500px); padding:18px; border:3px solid var(--gold); outline:8px solid rgba(22,140,255,.18); background:var(--yellow); transform:rotate(-1deg); box-shadow:var(--shadow); }
.story-photo-frame { overflow:hidden; border:4px solid var(--ivory); }
.story-photo-frame img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 35%; }
.story-text { padding:clamp(75px,9vw,130px) 24px; }
.story-journey { background:linear-gradient(135deg,#fff8df,var(--ivory)); }
.story-narrow { max-width:900px; margin:0 auto; }
.story-narrow h2 { font-size:clamp(2.3rem,4.8vw,4.6rem); }
.story-turn { margin-top:35px; font-family:Georgia,"Times New Roman",serif; color:var(--brown); font-weight:800; font-size:clamp(1.35rem,2vw,1.7rem); }
.story-origin { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.9fr); gap:clamp(40px,6vw,90px); align-items:center; padding:clamp(75px,9vw,125px) clamp(24px,7vw,110px); background:radial-gradient(circle at 8% 15%,rgba(22,140,255,.18),transparent 25%),linear-gradient(135deg,#eaf5ff,var(--parchment)); border-top:5px solid var(--blue); border-bottom:5px solid var(--yellow); }
.big-questions { display:inline-block; padding:8px 16px; margin:8px 0 16px; background:var(--yellow); border:2px solid var(--gold); font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.5rem,2.5vw,2rem); font-weight:900; transform:rotate(-1deg); }
.origin-art { max-width:590px; justify-self:center; padding:10px; background:var(--ivory); border:3px solid var(--gold); box-shadow:var(--shadow); transform:rotate(1deg); }
.why-story { padding:clamp(85px,10vw,145px) 24px; background:linear-gradient(135deg,var(--blue-deep),var(--navy)); color:white; border-bottom:7px solid var(--yellow); }
.why-story h2 { color:white; }
.why-story blockquote { margin:45px auto; padding:28px 20px; max-width:720px; text-align:center; border-top:3px solid var(--yellow); border-bottom:3px solid var(--yellow); color:var(--yellow); font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.4rem,6vw,5.4rem); font-weight:800; line-height:1.05; }
.bigger-story { padding:clamp(85px,10vw,145px) 24px; text-align:center; background:radial-gradient(circle at 50% 15%,rgba(255,214,51,.58),transparent 28%),linear-gradient(135deg,var(--parchment),var(--ivory)); }
.bigger-story .story-narrow { max-width:950px; }
.mission-line { margin:40px auto 28px; max-width:780px; font-family:Georgia,"Times New Roman",serif; color:var(--blue-deep); font-weight:900; font-size:clamp(1.55rem,3vw,2.5rem); }
@media(max-width:860px){ .story-intro,.story-origin{grid-template-columns:1fr;} .story-intro .section-copy,.story-origin .section-copy{text-align:center;margin:0 auto;} .story-photo-wrap{max-width:420px;} .origin-art{max-width:600px;} }
@media(max-width:620px){ .story-intro,.story-origin{padding-left:19px;padding-right:19px;} .story-photo-wrap{padding:10px;outline-width:5px;} .why-story blockquote{font-size:clamp(2.1rem,12vw,3.6rem);} }

/* House of Ra / Studio page */
.studio-hero{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(40px,7vw,100px);align-items:center;padding:clamp(75px,9vw,130px) clamp(24px,7vw,110px);background:radial-gradient(circle at 15% 15%,rgba(255,214,51,.72),transparent 29%),radial-gradient(circle at 90% 15%,rgba(22,140,255,.17),transparent 26%),linear-gradient(135deg,var(--ivory),var(--parchment));border-bottom:7px solid var(--yellow)}
.studio-logo-wrap{justify-self:center;width:min(100%,480px);padding:18px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 0 8px rgba(255,214,51,.55),0 0 0 12px rgba(22,140,255,.22),var(--shadow)}.studio-logo-wrap img{border-radius:50%}
.studio-hero h1{font-size:clamp(3.2rem,6.5vw,6.7rem);color:var(--navy);margin-bottom:20px}.studio-hero h1 span{display:block;color:var(--gold-dark);font-size:.55em;letter-spacing:.03em}.studio-lead{font-family:Georgia,"Times New Roman",serif;color:var(--blue-deep);font-weight:800;font-size:clamp(1.3rem,2.2vw,1.9rem)}
.studio-narrow{max-width:1000px;margin:0 auto}.studio-stories{padding:clamp(85px,10vw,145px) 24px;text-align:center;background:linear-gradient(135deg,#fff8df,var(--ivory))}.studio-stories h2{font-size:clamp(2.3rem,4.7vw,4.6rem)}.story-beats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:38px auto;max-width:1050px}.story-beats span{display:grid;place-items:center;min-height:115px;padding:22px;border:2px solid var(--gold);border-radius:20px;background:#fff3b8;font-family:Georgia,"Times New Roman",serif;font-weight:800;font-size:clamp(1.05rem,1.5vw,1.3rem);box-shadow:0 10px 24px rgba(16,36,62,.08)}.story-beats span:nth-child(2){background:#e9f4ff;border-color:var(--blue)}
.studio-art{padding:clamp(80px,9vw,135px) clamp(20px,5vw,80px);background:linear-gradient(145deg,#eaf5ff 0%,var(--ivory) 48%,#fff2b8 100%);border-top:5px solid var(--blue);border-bottom:6px solid var(--yellow)}.studio-art-copy{text-align:center;max-width:930px}.comic-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,38px);align-items:center;max-width:1380px;margin:55px auto 0}.comic-gallery figure{margin:0;padding:9px;background:var(--ivory);border:3px solid var(--gold);box-shadow:var(--shadow);transform:rotate(-1deg)}.comic-gallery figure:nth-child(3){transform:rotate(1deg)}.comic-gallery .gallery-feature{transform:translateY(-8px);border-color:var(--blue);box-shadow:0 20px 55px rgba(11,99,201,.22)}.comic-gallery img{width:100%;height:auto}
.studio-independent{padding:clamp(90px,10vw,150px) 24px;background:linear-gradient(135deg,var(--blue-deep),var(--navy));color:white;border-bottom:7px solid var(--yellow)}.studio-independent h2{color:white}.studio-independent .studio-narrow{max-width:900px}.studio-independent p{font-size:clamp(1.08rem,1.5vw,1.22rem)}
.studio-future{padding:clamp(90px,10vw,150px) 24px;text-align:center;background:radial-gradient(circle at 50% 10%,rgba(255,214,51,.65),transparent 30%),linear-gradient(135deg,var(--parchment),var(--ivory))}.studio-future .studio-narrow{max-width:960px}.future-lines{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:34px 0}.future-lines span{padding:11px 18px;background:#fff;border:2px solid var(--gold);border-radius:999px;font-weight:900;color:var(--brown)}.future-lines span:nth-child(even){border-color:var(--blue);color:var(--blue-deep)}.seed-line{margin:45px auto 34px;padding:28px 18px;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);font-family:Georgia,"Times New Roman",serif}.seed-line em,.seed-line strong{display:block}.seed-line em{font-size:clamp(1.45rem,2.5vw,2.1rem);color:var(--brown)}.seed-line strong{margin-top:8px;font-size:clamp(2rem,4vw,3.7rem);color:var(--blue-deep)}
@media(max-width:900px){.studio-hero{grid-template-columns:1fr;text-align:center}.studio-logo-wrap{max-width:380px}.story-beats{grid-template-columns:1fr}.story-beats span{min-height:0}.comic-gallery{grid-template-columns:1fr;max-width:560px}.comic-gallery figure,.comic-gallery figure:nth-child(3),.comic-gallery .gallery-feature{transform:none}}
@media(max-width:620px){.studio-hero{padding-left:19px;padding-right:19px}.studio-logo-wrap{max-width:300px;padding:10px}.future-lines{align-items:stretch;flex-direction:column}.future-lines span{border-radius:16px}}

/* Work With House of Ra page */
.work-hero{padding:clamp(90px,10vw,150px) 24px;background:radial-gradient(circle at 12% 12%,rgba(255,214,51,.78),transparent 28%),radial-gradient(circle at 90% 20%,rgba(22,140,255,.22),transparent 28%),linear-gradient(135deg,var(--ivory),var(--parchment));border-bottom:7px solid var(--yellow)}.work-hero-inner,.work-narrow{max-width:1000px;margin:0 auto}.work-hero h1{font-size:clamp(3.3rem,7vw,7rem);color:var(--navy);margin-bottom:28px}.work-hero h1 span{color:var(--blue-deep)}.work-lead{margin-top:28px;font-family:Georgia,"Times New Roman",serif;font-weight:900;color:var(--brown);font-size:clamp(1.3rem,2.2vw,1.9rem)}
.support-section{padding:clamp(85px,10vw,145px) 24px;text-align:center;background:linear-gradient(135deg,#fff8df,var(--ivory))}.support-section h2{font-size:clamp(2.3rem,4.8vw,4.6rem)}.support-intro{max-width:800px;margin:0 auto 45px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:45px auto 38px}.service-card{padding:34px 26px;text-align:left;border:3px solid var(--gold);border-radius:24px;background:#fff4bd;box-shadow:var(--shadow)}.service-card.blue-card{background:#e9f4ff;border-color:var(--blue)}.service-symbol{width:58px;height:58px;display:grid;place-items:center;margin-bottom:20px;border-radius:50%;background:var(--yellow);border:2px solid var(--gold);font-size:1.8rem;color:var(--navy)}.blue-card .service-symbol{background:var(--blue);border-color:var(--blue-deep);color:white}.service-card h3{font-size:clamp(1.35rem,2vw,1.8rem);color:var(--blue-deep)}.service-card p{font-size:1rem}.support-note{max-width:900px;margin:35px auto 0;padding:18px 22px;border-left:5px solid var(--gold);background:rgba(255,255,255,.7);text-align:left;font-size:.95rem}
.development-section{padding:clamp(90px,10vw,150px) 24px;background:radial-gradient(circle at 88% 10%,rgba(255,214,51,.55),transparent 27%),linear-gradient(135deg,#eaf5ff,var(--parchment));border-top:5px solid var(--blue);border-bottom:6px solid var(--yellow)}.development-badge{display:inline-block;margin-bottom:25px;padding:10px 18px;border:3px solid var(--blue);background:var(--yellow);font-weight:1000;letter-spacing:.16em;color:var(--navy);transform:rotate(-1deg);box-shadow:5px 5px 0 rgba(11,99,201,.18)}.future-support{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:35px 0}.future-support span{padding:18px;border:2px solid var(--gold);border-radius:16px;background:rgba(255,253,245,.85);font-weight:900;color:var(--brown)}.future-support span:nth-child(even){border-color:var(--blue);color:var(--blue-deep)}
.collaboration-section{padding:clamp(90px,10vw,150px) 24px;background:linear-gradient(135deg,var(--blue-deep),var(--navy));color:white;border-bottom:7px solid var(--yellow)}.collaboration-section h2{color:white;font-size:clamp(2.4rem,5vw,4.8rem)}.collaboration-section .work-narrow{max-width:900px}.collaboration-section p{font-size:clamp(1.08rem,1.5vw,1.22rem)}
.watch-section{padding:clamp(90px,10vw,150px) 24px;text-align:center;background:radial-gradient(circle at 50% 10%,rgba(255,214,51,.68),transparent 30%),linear-gradient(135deg,var(--parchment),var(--ivory))}.watch-section .work-narrow{max-width:900px}.road-line{margin:45px auto 0;padding:30px 18px;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);font-family:Georgia,"Times New Roman",serif}.road-line em,.road-line strong{display:block}.road-line em{font-size:clamp(1.45rem,2.5vw,2.1rem);color:var(--brown)}.road-line strong{margin-top:8px;font-size:clamp(2rem,4vw,3.6rem);color:var(--blue-deep)}
@media(max-width:900px){.service-grid{grid-template-columns:1fr}.service-card{max-width:650px;margin:0 auto;width:100%}.future-support{grid-template-columns:1fr}}
@media(max-width:620px){.work-hero,.support-section,.development-section,.collaboration-section,.watch-section{padding-left:19px;padding-right:19px}.service-card{padding:27px 21px}}

/* House of Ra Journal */
.journal-hero{padding:clamp(95px,11vw,165px) 24px;background:radial-gradient(circle at 12% 14%,rgba(255,214,51,.86),transparent 30%),radial-gradient(circle at 90% 18%,rgba(22,140,255,.25),transparent 29%),linear-gradient(135deg,var(--ivory),var(--parchment));border-bottom:7px solid var(--yellow)}.journal-hero-inner,.journal-narrow{max-width:1050px;margin:0 auto}.journal-hero h1{font-size:clamp(3.3rem,7vw,7rem);color:var(--navy);margin-bottom:26px}.journal-hero h1 span{color:var(--blue-deep)}.journal-hero p:last-child{max-width:820px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:700;color:var(--brown)}
.journal-latest{padding:clamp(85px,10vw,145px) 24px;background:linear-gradient(135deg,#fff9e5,var(--ivory))}.journal-latest h2{font-size:clamp(2.5rem,5vw,4.8rem)}.journal-intro{max-width:820px}.journal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:48px}.journal-card{overflow:hidden;border:3px solid var(--gold);border-radius:24px;background:white;box-shadow:var(--shadow)}.journal-card.featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);border-color:var(--blue)}.journal-card img{width:100%;height:330px;object-fit:cover}.journal-card.featured img{height:100%;min-height:430px}.journal-card-copy{padding:30px}.journal-meta{margin:0 0 12px;font-size:.78rem;font-weight:1000;letter-spacing:.13em;color:var(--blue-deep)}.journal-card h3{font-size:clamp(1.65rem,2.6vw,2.6rem);color:var(--brown)}.journal-card.featured h3{color:var(--blue-deep)}.text-link,.coming-note{display:inline-block;margin-top:12px;font-weight:1000;letter-spacing:.08em;color:var(--blue-deep)}
.journal-guide{padding:clamp(90px,10vw,150px) 24px;text-align:center;background:radial-gradient(circle at 88% 15%,rgba(255,214,51,.58),transparent 27%),linear-gradient(135deg,#eaf5ff,var(--parchment));border-top:5px solid var(--blue);border-bottom:6px solid var(--yellow)}.journal-guide h2{font-size:clamp(2.4rem,5vw,4.7rem)}.journal-tags,.journal-social{display:flex;flex-wrap:wrap;justify-content:center;gap:13px;margin:38px 0}.journal-tags span,.journal-social span{padding:12px 20px;border:2px solid var(--gold);border-radius:999px;background:white;font-weight:1000;color:var(--brown)}.journal-tags span:nth-child(even),.journal-social span:nth-child(even){border-color:var(--blue);color:var(--blue-deep);background:#edf7ff}
.journal-home{padding:clamp(90px,10vw,150px) 24px;background:linear-gradient(135deg,var(--blue-deep),var(--navy));color:white;border-bottom:7px solid var(--yellow)}.journal-home h2{color:white;font-size:clamp(2.5rem,5vw,4.8rem)}.journal-home .journal-narrow{max-width:900px}.journal-follow{padding:clamp(95px,11vw,160px) 24px;text-align:center;background:radial-gradient(circle at 50% 10%,rgba(255,214,51,.75),transparent 31%),linear-gradient(135deg,var(--parchment),var(--ivory))}.journal-follow h2{font-size:clamp(2.5rem,5vw,4.8rem);color:var(--blue-deep)}
@media(max-width:820px){.journal-card.featured{grid-template-columns:1fr}.journal-card.featured img{min-height:0;height:390px}.journal-grid{grid-template-columns:1fr}.journal-card.featured{grid-column:auto}}@media(max-width:620px){.journal-hero,.journal-latest,.journal-guide,.journal-home,.journal-follow{padding-left:19px;padding-right:19px}.journal-card img,.journal-card.featured img{height:300px}.journal-card-copy{padding:24px 21px}.journal-tags,.journal-social{flex-direction:column}.journal-tags span,.journal-social span{border-radius:15px}}

/* Contact page */
.contact-narrow{max-width:1000px;margin:0 auto}.contact-hero{padding:clamp(95px,11vw,165px) 24px;background:radial-gradient(circle at 12% 15%,rgba(255,214,51,.86),transparent 30%),radial-gradient(circle at 90% 18%,rgba(22,140,255,.23),transparent 28%),linear-gradient(135deg,var(--ivory),var(--parchment));border-bottom:7px solid var(--yellow)}.contact-hero h1{font-size:clamp(3.4rem,7vw,7rem);color:var(--navy);margin-bottom:15px}.contact-hero h1 span{color:var(--blue-deep)}.contact-lead{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.6rem,3vw,2.5rem);font-weight:900;color:var(--gold-dark);margin:0 0 22px}.contact-hero p:last-child{max-width:820px;font-size:clamp(1.08rem,1.6vw,1.25rem)}
.contact-form-section{padding:clamp(85px,10vw,145px) 24px;background:linear-gradient(135deg,#fff9e5,var(--ivory))}.contact-form-heading{text-align:center;margin-bottom:40px}.contact-form-heading h2{font-size:clamp(2.4rem,5vw,4.7rem)}.contact-form{max-width:820px;margin:0 auto;padding:clamp(26px,5vw,52px);border:3px solid var(--gold);border-radius:28px;background:#fffdf8;box-shadow:var(--shadow)}.contact-form label{display:block;margin-bottom:25px;font-weight:1000;letter-spacing:.07em;color:var(--navy);font-size:.9rem}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:9px;padding:15px 16px;border:2px solid #d7b966;border-radius:12px;background:white;color:var(--navy);font:inherit;font-weight:500;letter-spacing:0;outline:none}.contact-form textarea{resize:vertical;min-height:180px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(22,140,255,.12)}.contact-form button{border-style:solid;cursor:pointer}.form-status{margin:24px 0 0;padding:0;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;font-weight:900;color:var(--blue-deep)}.form-status:empty{display:none}.form-preview-note{margin:24px 0 0;padding:14px 16px;border-left:4px solid var(--gold);background:#fff5c8;font-size:.88rem;color:var(--brown)}
.contact-online{padding:clamp(90px,10vw,150px) 24px;text-align:center;background:radial-gradient(circle at 85% 12%,rgba(255,214,51,.55),transparent 27%),linear-gradient(135deg,#eaf5ff,var(--parchment));border-top:5px solid var(--blue);border-bottom:6px solid var(--yellow)}.contact-online h2{font-size:clamp(2.5rem,5vw,4.8rem)}.contact-socials{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:35px 0 24px}.contact-socials span{min-width:180px;padding:15px 26px;border:3px solid var(--gold);border-radius:999px;background:var(--yellow);font-weight:1000;letter-spacing:.12em;color:var(--navy)}.contact-socials span:nth-child(2){background:var(--blue);border-color:var(--blue-deep);color:white}.online-note{font-style:italic;color:var(--brown)}
.contact-final{padding:clamp(100px,12vw,175px) 24px;text-align:center;background:radial-gradient(circle at 50% 18%,rgba(255,214,51,.2),transparent 30%),linear-gradient(135deg,var(--blue-deep),var(--navy));color:white;border-bottom:7px solid var(--yellow)}.contact-final .contact-narrow{max-width:900px}.contact-final h2{color:white;font-size:clamp(2.7rem,5.5vw,5.3rem)}.contact-final h2 span{color:var(--yellow)}.contact-final p{font-size:clamp(1.08rem,1.6vw,1.25rem)}.doors-open{margin-top:35px!important;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.6rem,3vw,2.5rem)!important;font-weight:900;color:var(--yellow)}.contact-final blockquote{margin:35px auto 0;padding:30px 18px;border-top:3px solid var(--yellow);border-bottom:3px solid var(--yellow);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4.8vw,4.4rem);font-weight:900;font-style:italic;line-height:1.15;color:white}.footer-social-text,.footer-policy-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}.footer-policy-links a{color:#fff3b8;text-decoration:none}.footer-policy-links a:hover{text-decoration:underline}.footer-legal-note{max-width:800px;margin:18px auto 0;text-align:center;font-size:.82rem;opacity:.76}
@media(max-width:620px){.contact-hero,.contact-form-section,.contact-online,.contact-final{padding-left:19px;padding-right:19px}.contact-form{padding:25px 19px;border-radius:20px}.contact-socials{flex-direction:column;align-items:stretch}.contact-socials span{min-width:0}.contact-final blockquote{font-size:clamp(2rem,10vw,3.4rem)}}

/* Shop / Order page */
.shop-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(190px,.45fr);gap:45px;align-items:center;padding:clamp(75px,9vw,130px) clamp(24px,7vw,110px);background:radial-gradient(circle at 12% 15%,rgba(255,214,51,.7),transparent 30%),linear-gradient(135deg,var(--ivory),var(--parchment));border-bottom:7px solid var(--yellow)}.shop-hero h1{font-size:clamp(3.2rem,6.5vw,6.5rem);color:var(--navy);margin-bottom:20px}.shop-hero h1 span{color:var(--blue-deep)}.shop-hero img{width:min(300px,100%);justify-self:center;border-radius:50%;box-shadow:0 18px 55px rgba(213,161,38,.25)}.shop-lead{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.3rem,2.2vw,1.9rem);font-weight:800;color:var(--brown)}
.shop-product{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(40px,7vw,100px);align-items:center;padding:clamp(75px,9vw,125px) clamp(24px,7vw,110px);background:linear-gradient(135deg,#fff9e6,var(--ivory))}.shop-cover{width:min(100%,470px);justify-self:center;padding:12px;background:white;border:3px solid var(--gold);box-shadow:var(--shadow);transform:rotate(-1deg)}.shop-cover img{width:100%;height:auto}.shop-details h2{font-size:clamp(2.7rem,5vw,5rem);color:var(--brown)}.shop-tagline{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;font-weight:800;color:var(--blue-deep)}.shop-price{margin:28px 0 18px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,4vw,4rem);font-weight:900;color:var(--navy)}.shop-price small{font-family:"Segoe UI",Arial,sans-serif;font-size:.34em}.shop-facts{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:30px}.shop-facts span{padding:8px 13px;border-radius:999px;background:#eaf5ff;border:2px solid var(--blue);font-size:.78rem;font-weight:1000;letter-spacing:.08em}.quantity-label{display:block;font-weight:1000;letter-spacing:.1em;color:var(--navy);margin-bottom:9px}.quantity-control{display:flex;width:170px;border:2px solid var(--gold);border-radius:999px;overflow:hidden;background:white}.quantity-control button{width:50px;border:0;background:var(--yellow);font-size:1.5rem;font-weight:900;cursor:pointer}.quantity-control input{width:70px;border:0;text-align:center;font:inherit;font-weight:900;color:var(--navy);-moz-appearance:textfield}.quantity-control input::-webkit-inner-spin-button{display:none}
.order-summary-section{padding:clamp(85px,10vw,145px) 24px;background:linear-gradient(135deg,#eaf5ff,var(--parchment));border-top:5px solid var(--blue);border-bottom:6px solid var(--yellow)}.order-summary{max-width:760px;margin:auto;padding:clamp(28px,5vw,55px);border:3px solid var(--gold);border-radius:28px;background:#fffdf8;box-shadow:var(--shadow)}.order-summary h2{font-size:clamp(2.4rem,5vw,4.4rem)}.summary-row{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid #dfc986;font-size:1.08rem}.summary-total{border-bottom:0;padding-top:25px;font-size:1.35rem;color:var(--navy)}.pending-cost{font-size:.8rem;color:var(--gold-dark);text-align:right}.postage-note,.payment-note{padding:14px 16px;border-left:4px solid var(--gold);background:#fff4c1;font-size:.9rem}.paypal-preview{width:100%;margin:15px 0 5px;cursor:pointer}.international-order{padding:clamp(85px,10vw,140px) 24px;text-align:center;background:var(--ivory)}.international-order>div{max-width:800px;margin:auto}.international-order h2{font-size:clamp(2.4rem,5vw,4.6rem);color:var(--blue-deep)}.shop-final{position:relative;min-height:520px;display:grid;place-items:center;text-align:center;overflow:hidden;color:white}.shop-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shop-final-overlay{position:absolute;inset:0;background:linear-gradient(rgba(16,36,62,.2),rgba(16,36,62,.72))}.shop-final>div:last-child{position:relative;z-index:2;padding:40px 24px}.shop-final h2{color:white;font-size:clamp(3rem,6vw,5.8rem);text-shadow:0 3px 14px rgba(0,0,0,.35)}.shop-final p:last-child{font-size:1.4rem;color:#fff3b8}
@media(max-width:820px){.shop-hero,.shop-product{grid-template-columns:1fr;text-align:center}.shop-hero img{width:180px}.shop-cover{max-width:400px}.shop-facts{justify-content:center}.quantity-control{margin:auto}}@media(max-width:620px){.shop-hero,.shop-product,.order-summary-section,.international-order{padding-left:19px;padding-right:19px}.order-summary{padding:25px 19px}.summary-row{font-size:.95rem}.shop-final{min-height:430px}}
