:root {
    --purple: #6a0dad;
    --teal: #008080;
    --gold: #caa54b;
    --ink: #2a1a3e;
    --paper: #f8f5ff;
    --white: #ffffff;
}

.page-hero {
  padding: 190px 0 100px;
  background:
    radial-gradient(circle at 12% 20%, rgba(202, 165, 75, 0.22), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(0, 128, 128, 0.18), transparent 32%),
    linear-gradient(135deg, #f8f5ff 0%, #ffffff 48%, #eefcf9 100%);
}

.form-shell {
  max-width: 900px;
}

.stage-list {
  display: grid;
  gap: 18px;
  margin-top: 28px;
}

.stage-card summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  cursor: pointer;
  font-family: "Cinzel", serif;
  font-size: 1.12rem;
  color: #2a1a3e;
}

.stage-card[open] {
  border-color: rgba(106, 13, 173, 0.35);
  box-shadow: 0 22px 55px rgba(106, 13, 173, 0.14);
}

.ai-output {
  margin: 24px 0;
  padding: 22px;
  border-radius: 16px;
  background: #f8f5ff;
  border: 1px solid rgba(106, 13, 173, 0.12);
}

.ai-output pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: "Poppins", sans-serif;
  line-height: 1.75;
}

.output-meta {
  margin-bottom: 14px;
  color: #6a0dad;
  font-weight: 600;
}

.stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 28px 0;
}

.stats strong {
  display: block;
  font-family: "Cinzel", serif;
  font-size: 2.4rem;
  color: #6a0dad;
}

.table-wrap {
  overflow-x: auto;
}

.check {
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
}

.check input {
  width: auto;
  margin-top: 5px;
}

@media (max-width: 760px) {
  .page-hero { padding: 135px 0 70px; }
  .stats { grid-template-columns: 1fr; }
}

body {
    background: var(--paper);
}

.site-header {
    position: fixed;
    top: 14px;
    left: 50%;
    width: min(94vw, 1080px);
    border: 1px solid rgba(106, 13, 173, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 18px 45px rgba(42, 26, 62, 0.15);
    backdrop-filter: blur(16px);
    transform: translateX(-50%);
}

.nav {
    width: 100%;
    min-height: 66px;
    padding: 8px 12px 8px 24px;
}

.brand {
    white-space: nowrap;
}

.brand-logo {
    display: block;
    width: 52px;
    height: 52px;
    object-fit: contain;
    border-radius: 12px;
    box-shadow: 0 0 0 1px rgba(212, 175, 55, .35), 0 8px 24px rgba(10, 105, 105, .28);
}

.brand-horizontal {
    display: inline-flex;
    align-items: center;
}

.brand-logo-wide {
    display: block;
    width: 205px;
    height: 58px;
    object-fit: cover;
    object-position: center;
    border-radius: 13px;
    box-shadow: 0 8px 26px rgba(4, 47, 49, .23);
}

.brand-name {
    display: grid;
    line-height: 1;
}

.brand-name strong {
    color: #2a183d;
    font-family: Cinzel, Georgia, serif;
    font-size: 23px;
    letter-spacing: .12em;
}

.brand-name small {
    margin-top: 6px;
    color: #087f7b;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .22em;
}

.nav-links {
    gap: 4px;
    perspective: 700px;
}

.nav .nav-links > a,
.nav .nav-links > a.nav-cta {
    min-height: 42px;
    padding: 10px 11px;
    border: 1px solid rgba(255,255,255,.55) !important;
    border-radius: 999px;
    background: linear-gradient(135deg,#6a0dad,#8416b2) !important;
    box-shadow: 0 8px 18px rgba(106,13,173,.24), inset 0 1px rgba(255,255,255,.25) !important;
    color: #fff !important;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1;
    text-decoration: none;
    transform: translateY(-2px);
}

.nav .nav-links > a:nth-child(even) {
    background: linear-gradient(135deg,#087f7b,#0b9992) !important;
    box-shadow: 0 8px 18px rgba(8,127,123,.24), inset 0 1px rgba(255,255,255,.25) !important;
}

.nav .nav-links > a:hover,
.nav .nav-links > a:focus-visible {
    border-color: #d8b85a;
    box-shadow: 0 14px 28px rgba(42,24,61,.28), 0 0 0 3px rgba(216,184,90,.18);
    transform: translateY(-6px) scale(1.03);
}

.nav a:not(.brand):not(.nav-cta) {
    display: grid;
    min-height: 42px;
    place-items: center;
    border: 0;
    border-radius: 999px;
    background: transparent;
    box-shadow: none;
    color: var(--ink);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.55px;
    text-align: center;
    text-transform: uppercase;
    transform: none;
}

.nav .nav-cta {
    min-height: 44px;
    padding-inline: 20px;
    white-space: nowrap;
}

.nav a:not(.brand):hover,
.nav a:not(.brand):focus-visible {
    border-color: rgba(255, 255, 255, 0.85);
    background: linear-gradient(135deg, var(--purple), var(--teal));
    box-shadow: 0 22px 45px rgba(0, 128, 128, 0.28);
    color: #ffffff;
    transform: translateY(-3px) rotateX(0deg) scale(1.04);
}

.hero {
    padding-top: 150px;
}

.hero-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
    gap: 60px;
    align-items: center;
}

.hero-copy h1 {
    max-width: 780px;
}

.hero-actions,
.trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
}

.hero-actions { margin-top: 30px; }
.trust-row { margin-top: 26px; color: #675b72; font-size: 13px; font-weight: 600; }
.trust-row span:before { content: "✓"; margin-right: 7px; color: var(--teal); }

.book-stage {
    position: relative;
    min-height: 500px;
    perspective: 1200px;
}

.hero-books {
    margin: 0;
    align-self: center;
    text-align: center;
}

.hero-books img {
    display: block;
    width: 100%;
    border-radius: 32px;
    box-shadow: 0 30px 70px rgba(42, 24, 61, .18);
}

.hero-books figcaption {
    display: grid;
    gap: 6px;
    margin: 22px auto 0;
}

.hero-books figcaption strong {
    color: #2a183d;
    font-family: Cinzel, Georgia, serif;
    font-size: clamp(22px, 2.3vw, 34px);
    font-weight: 600;
}

.hero-books figcaption span {
    color: #087f7b;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
}

.real-book-fan {
    position: relative;
    min-height: 430px;
    border-radius: 32px;
    background: radial-gradient(circle at 50% 45%, rgba(202,165,75,.24), transparent 42%), linear-gradient(135deg,#f4edf9,#e9f8f6);
    box-shadow: 0 30px 70px rgba(42,24,61,.16);
}

.hero-books .real-book-fan img {
    position: absolute;
    width: 145px;
    height: 225px;
    object-fit: cover;
    border-radius: 4px 10px 10px 4px;
    box-shadow: -12px 20px 35px rgba(25,15,34,.28);
    transition: transform .3s ease;
}

.real-book-fan img:nth-child(1) { left: 24px; top: 92px; transform: rotate(-9deg); }
.real-book-fan img:nth-child(2) { left: 145px; top: 28px; transform: rotate(3deg); z-index: 3; }
.real-book-fan img:nth-child(3) { right: 35px; top: 105px; transform: rotate(9deg); }
.real-book-fan img:nth-child(4) { left: 165px; bottom: 18px; width: 110px; height: 165px; transform: rotate(-2deg); z-index: 4; }
.real-book-fan:hover img:nth-child(1) { transform: translateX(-8px) rotate(-11deg); }
.real-book-fan:hover img:nth-child(3) { transform: translateX(8px) rotate(11deg); }

.book {
    position: absolute;
    width: 245px;
    height: 360px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 30px;
    color: white;
    border-radius: 7px 20px 20px 7px;
    box-shadow: -18px 24px 55px rgba(42, 26, 62, .28), inset 10px 0 18px rgba(0,0,0,.16);
    transform: rotateY(-16deg) rotateZ(-4deg);
    z-index: 2;
}

.book:after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.24); border-radius: inherit; }
.book strong { font: 600 44px/1.02 Cinzel, serif; }
.book small, .book span { letter-spacing: .12em; text-transform: uppercase; font-size: 10px; }
.book-one { left: 5px; top: 90px; background: linear-gradient(155deg, #6a0dad, #2a1a3e); }
.book-two { right: 5px; top: 20px; background: linear-gradient(155deg, #008080, #133943); transform: rotateY(-13deg) rotateZ(5deg); z-index: 3; }
.book-glow { position: absolute; width: 370px; height: 370px; right: -20px; top: 50px; border-radius: 50%; background: radial-gradient(circle, rgba(202,165,75,.34), transparent 65%); filter: blur(5px); }

.authority-bar { background: #2a1a3e; color: white; padding: 19px 0; }
.authority-bar .container { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 18px; font-size: 11px; font-weight: 600; letter-spacing: .15em; }
.authority-bar i { width: 5px; height: 5px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 15px var(--gold); }

.signature-hero {
    position: relative;
    overflow: hidden;
    padding: 165px 0 90px;
}

.signature-hero:before,
.signature-hero:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    filter: blur(5px);
    pointer-events: none;
}

.signature-hero:before { width: 420px; height: 420px; right: -120px; top: 40px; background: rgba(0,128,128,.14); }
.signature-hero:after { width: 320px; height: 320px; left: -110px; bottom: -180px; background: rgba(106,13,173,.12); }
.signature-layout { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 80px; }
.signature-hero h1 { max-width: 760px; font-size: clamp(46px, 5.5vw, 82px); line-height: .98; }
.signature-hero .lead { max-width: 720px; }
.services-hero { background: radial-gradient(circle at 80% 25%, rgba(202,165,75,.24), transparent 30%), linear-gradient(125deg,#fbf6ef,#f1fbfa 60%,#ede4f8); }
.creation-hero { background: linear-gradient(130deg,#271638 0 48%,#6c137f 100%); color: white; }
.creation-hero h1, .creation-hero .eyebrow { color: white; }
.creation-hero .lead { color: #eadff2; }
.process-hero { background: radial-gradient(circle at 76% 48%,rgba(0,128,128,.20),transparent 33%),linear-gradient(135deg,#f7f2ff,#effaf8); }
.plans-hero { background: linear-gradient(135deg,#fffaf0,#f0e0ad 52%,#6d4c19 160%); }

.hero-service-stack { position: relative; min-height: 380px; display: grid; place-items: center; }
.hero-service-stack span, .hero-service-stack strong { position: absolute; width: 260px; padding: 24px 30px; border-radius: 18px; color: white; letter-spacing: .18em; box-shadow: 0 24px 55px rgba(42,24,61,.22); }
.hero-service-stack span:nth-child(1) { transform: translate(-55px,-105px) rotate(-8deg); background:#2a183d; }
.hero-service-stack span:nth-child(2) { transform: translate(40px,-35px) rotate(5deg); background:#6a0dad; }
.hero-service-stack span:nth-child(3) { transform: translate(-35px,45px) rotate(-4deg); background:#087f7b; }
.hero-service-stack strong { transform: translate(50px,120px) rotate(7deg); background:#caa54b; color:#2a183d; }

.manuscript-visual { min-height: 420px; padding: 62px 55px; border-radius: 4px 34px 34px 4px; background:#fffdf8; color:#2a183d; box-shadow:-25px 30px 70px rgba(0,0,0,.28),inset 16px 0 20px rgba(42,24,61,.08); transform:rotate(4deg); }
.manuscript-visual small { letter-spacing:.18em; }
.manuscript-visual i { display:block; height:2px; margin:28px 0; background:linear-gradient(90deg,#caa54b 0 74%,transparent 74%); }
.manuscript-visual i:nth-of-type(2) { width:88%; }.manuscript-visual i:nth-of-type(3) { width:70%; }
.manuscript-visual strong { display:block; margin-top:55px; font:600 42px/1 Cinzel,serif; }
.author-studio-image { margin:0; overflow:hidden; border:1px solid rgba(216,184,90,.45); border-radius:30px; background:#0b2c2d; box-shadow:0 32px 75px rgba(0,0,0,.35); transform:rotate(1.5deg); }
.author-studio-image img { display:block; width:100%; min-height:410px; object-fit:cover; }
.author-studio-image figcaption { padding:16px 22px; color:#f1d988; font:600 14px Cinzel,serif; letter-spacing:.04em; text-align:center; }

.process-orbit { position:relative; width:390px; height:390px; margin:auto; border:1px solid rgba(106,13,173,.25); border-radius:50%; display:grid; place-items:center; box-shadow:inset 0 0 70px rgba(0,128,128,.12); }
.process-orbit:before { content:""; position:absolute; inset:55px; border:1px solid rgba(0,128,128,.30); border-radius:50%; }
.process-orbit strong { font:600 42px/1 Cinzel,serif; text-align:center; color:#2a183d; }
.process-orbit span { position:absolute; width:58px; height:58px; display:grid; place-items:center; border-radius:50%; color:white; background:#6a0dad; box-shadow:0 12px 30px rgba(106,13,173,.28); }
.process-orbit span:nth-child(1){top:-20px}.process-orbit span:nth-child(2){right:-20px}.process-orbit span:nth-child(3){bottom:-20px}.process-orbit span:nth-child(4){left:-20px}

.plan-seal { width:370px; height:370px; margin:auto; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; border:2px solid rgba(216,184,90,.65); outline:1px solid rgba(112,216,209,.58); outline-offset:-20px; background:radial-gradient(circle at 42% 35%,#0d7774,#073e43 72%,#251536); box-shadow:0 30px 70px rgba(8,74,73,.30),inset 0 0 55px rgba(112,216,209,.12); color:white; }
.plan-seal small,.plan-seal span{color:#f1d988;letter-spacing:.2em}.plan-seal strong{margin:14px 0;font:600 38px Cinzel,serif;color:white;text-shadow:0 3px 14px rgba(0,0,0,.35)}
.editorial-quote-band,.experience-band{padding:90px 0;text-align:center;background:#2a183d;color:white}.editorial-quote-band p{margin:0;color:#caa54b;font:80px/1 Georgia}.editorial-quote-band h2,.experience-band h2{max-width:900px;margin:0 auto;color:white}.editorial-quote-band span{display:block;margin-top:24px;color:#70d8d1;letter-spacing:.18em;font-size:11px}.experience-band{background:linear-gradient(135deg,#087f7b,#124c54)}.experience-band .eyebrow{color:#f1d988}.experience-band p{color:#fff}.experience-band p:last-child{max-width:760px;margin:22px auto 0;color:#fff}.experience-band.dark{background:#2a183d}

.site-footer .footer-grid a { display:block; margin:7px 0; line-height:1.45; }

.site-footer {
    position: relative;
    overflow: hidden;
    padding: 90px 0 28px;
    border-top: 5px solid #d8b85a;
    background:
        radial-gradient(circle at 12% 5%, rgba(17,170,160,.30), transparent 27%),
        radial-gradient(circle at 88% 85%, rgba(132,22,178,.30), transparent 30%),
        linear-gradient(135deg,#071f24 0%,#103f43 48%,#271536 100%);
    color: #f7f2fb;
}

.site-footer:before {
    content: "DPH  •  BOOKS WITH PURPOSE  •  PUBLISHING WITH CARE";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 14px 20px;
    background: rgba(3,18,22,.58);
    color: #f1d988;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
    text-align: center;
}

.site-footer .footer-grid {
    display: grid;
    grid-template-columns: 1.35fr repeat(3,1fr);
    gap: 18px;
}

.site-footer .footer-grid > div {
    min-width: 0;
    padding: 26px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    background: rgba(255,255,255,.055);
    box-shadow: inset 0 1px rgba(255,255,255,.08), 0 18px 40px rgba(0,0,0,.13);
    backdrop-filter: blur(8px);
}

.site-footer h2,
.site-footer h3 { color: #fff; }
.site-footer h2 { font-size: 24px; }
.site-footer h3 { margin-bottom: 18px; color: #f1d988; font-size: 16px; }
.site-footer p { color: #dfeceb; }
.site-footer a { color: #a7eee8; text-decoration: none; transition: .25s ease; }
.site-footer a:hover { color: #fff; transform: translateX(4px); }
.site-footer .footer-grid > div:first-child > a { overflow-wrap: anywhere; color: #f1d988; }

.site-footer .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.18);
    color: #cbdad9;
}

.site-footer .footer-bottom p { margin: 0; color: #cbdad9; font-size: 12px; }
.site-footer .private-access { color: rgba(255,255,255,.52); }

@media (max-width: 900px) {
    .site-footer .footer-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 620px) {
    .site-footer { padding-top: 105px; }
    .site-footer .footer-grid { grid-template-columns: 1fr; }
    .site-footer .footer-bottom { align-items: flex-start; flex-direction: column; }
}

.section-heading { max-width: 780px; margin: 0 auto 48px; text-align: center; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.service-card { position: relative; padding: 36px 30px; min-height: 280px; border: 1px solid rgba(106,13,173,.14); border-radius: 22px; background: rgba(255,255,255,.82); box-shadow: 0 18px 50px rgba(42,26,62,.08); transition: .3s ease; overflow: hidden; }
.service-card:hover { transform: translateY(-10px); box-shadow: 0 30px 70px rgba(42,26,62,.16); border-color: var(--teal); }
.service-card b { font: 600 42px Cinzel,serif; color: rgba(106,13,173,.16); }
.service-card h3 { font-size: 24px; }
.service-card a { font-weight: 600; text-decoration: none; }

.showcase-section { background: linear-gradient(135deg,#20112e,#2a1a3e 55%,#123f42); color: white; overflow: hidden; }
.showcase-section h2, .showcase-section .lead { color: white; }
.showcase-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 65px; align-items: center; }
.featured-books { display: flex; align-items: flex-end; justify-content: center; gap: 18px; perspective: 1200px; }
.featured-book { width: 190px; height: 290px; padding: 24px 18px; display: flex; flex-direction: column; justify-content: space-between; border-radius: 5px 14px 14px 5px; box-shadow: -12px 20px 35px rgba(0,0,0,.35); transition: .3s ease; transform: rotateY(-9deg); }
.featured-book:hover { transform: translateY(-15px) rotateY(0); }
.featured-book strong { font: 600 26px/1.1 Cinzel,serif; }
.featured-book small,.featured-book span { font-size: 9px; letter-spacing: .09em; text-transform: uppercase; }
.featured-book.purple { background: linear-gradient(145deg,#9147c8,#4d126f); }
.featured-book.teal { height: 330px; background: linear-gradient(145deg,#13a89e,#075b5b); }
.featured-book.gold { background: linear-gradient(145deg,#e5bd60,#8b6418); }
.featured-books { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: end; }
.real-book { color: #fff; text-decoration: none; text-align: center; transition: transform .3s ease; }
.real-book:hover { transform: translateY(-12px); }
.real-book img { display: block; width: 100%; aspect-ratio: 2/3; object-fit: cover; border-radius: 5px 12px 12px 5px; box-shadow: -10px 18px 30px rgba(0,0,0,.25); }
.real-book span { display: block; margin-top: 14px; color: #fff; font: 600 13px/1.35 Cinzel,serif; letter-spacing: .025em; text-shadow: 0 2px 10px rgba(0,0,0,.55); }

.process-line { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: rgba(106,13,173,.16); border: 1px solid rgba(106,13,173,.16); border-radius: 24px; overflow: hidden; }
.process-item { background: white; padding: 34px 28px; transition: .3s; }
.process-item:hover { background: #f6edff; transform: translateY(-4px); }
.process-item b { color: var(--teal); letter-spacing: .1em; }

.testimonial-section { background: linear-gradient(180deg,#fff,#f6edff); }
.testimonial-promise { max-width: 880px; margin: auto; display: grid; grid-template-columns: 100px 1fr; gap: 28px; padding: 42px; background: white; border-radius: 28px; box-shadow: 0 25px 70px rgba(42,26,62,.12); }
.testimonial-promise > span { font: 600 100px/.8 Cinzel,serif; color: var(--gold); }
.testimonial-promise h3 { font-size: 25px; }

.about-media-note {
    margin: 26px 0;
    padding: 20px 22px;
    border-left: 4px solid var(--gold);
    border-radius: 0 16px 16px 0;
    background: linear-gradient(135deg,rgba(106,13,173,.09),rgba(8,127,123,.10));
    color: var(--ink);
    box-shadow: 0 12px 30px rgba(42,26,62,.07);
}

.final-cta { text-align: center; }
.final-cta .hero-actions { justify-content: center; }
.final-cta .notice { max-width: 900px; margin: 45px auto 0; text-align: left; }
.text-link { font-weight: 600; text-decoration: none; }

.form {
    display: grid;
    gap: 20px;
    max-width: 680px;
}

.form > label:not(.check), .form .field label {
    display: grid;
    gap: 8px;
    width: 100%;
    font-weight: 600;
}

.form input:not([type="checkbox"]), .form textarea, .form select {
    display: block;
    width: 100%;
    min-width: 0;
    padding: 15px 17px;
    border: 1px solid #cfc5d8;
    border-radius: 14px;
    background: #fff;
    font: inherit;
}

.form textarea { min-height: 145px; resize: vertical; }
.private-access { display: inline-block; margin-top: 14px; font-size: 11px; opacity: .28 !important; }
.footer-bottom { display: flex; justify-content: space-between; gap: 25px; margin-top: 35px; padding-top: 24px; border-top: 1px solid rgba(106,13,173,.12); font-size: 12px; }

.card {
    border: 2px solid rgba(106, 13, 173, 0.25);
    border-radius: 18px;
}

.card:nth-child(3n + 1) {
    background: #f6edff;
}

.card:nth-child(3n + 2) {
    background: #eefcf9;
}

.card:nth-child(3n + 3) {
    background: #fff7e6;
}

.card:hover {
    border-color: var(--purple);
    box-shadow:
        0 22px 50px rgba(106, 13, 173, 0.28),
        0 0 34px rgba(0, 128, 128, 0.18);
    transform: translateY(-8px);
}

@media (max-width: 900px) {
    .site-header {
        top: 10px;
        width: min(calc(100% - 24px), 440px);
        border-radius: 25px;
    }

    .nav {
        min-height: 58px;
        padding: 6px 10px 6px 16px;
    }

    .nav-links {
        top: 68px;
        left: 0;
        right: 0;
    }

    .nav-links.is-open {
        display: flex;
    }

    .nav a:not(.brand) {
        width: 100%;
        transform: none;
    }

    .hero {
        padding-top: 122px;
    }

    .hero-layout, .showcase-layout { grid-template-columns: 1fr; }
    .signature-layout { grid-template-columns: 1fr; gap: 45px; }
    .signature-hero { padding-top: 130px; }
    .hero-service-stack { min-height: 340px; }
    .process-orbit,.plan-seal { width:300px; height:300px; }
    .book-stage { min-height: 450px; max-width: 470px; margin: auto; width: 100%; }
    .service-grid { grid-template-columns: repeat(2,1fr); }
    .process-line { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 620px) {
    html, body { max-width: 100%; overflow-x: hidden; }
    .container { width: min(100% - 30px, 1180px); }
    .site-header { width: calc(100% - 18px); }
    .nav { gap: 8px; padding: 6px 8px 6px 10px; }
    .mobile-toggle { flex: 0 0 auto; padding: 11px 16px; }
    .nav-links { max-height: calc(100vh - 90px); overflow-y: auto; padding: 12px; border-radius: 22px; background: rgba(255,255,255,.98); box-shadow: 0 22px 50px rgba(42,26,62,.24); }
    .brand-logo { width: 46px; height: 46px; border-radius: 11px; }
    .brand-logo-wide { width: min(46vw, 168px); height: 46px; border-radius: 10px; }
    .brand-name strong { font-size: 18px; }
    .brand-name small { font-size: 7px; }
    .service-grid, .process-line { grid-template-columns: 1fr; }
    .featured-books { gap: 8px; }
    .featured-books { grid-template-columns: repeat(2,1fr); gap: 25px; }
    .real-book span { margin-top: 10px; font-size: 12px; line-height: 1.4; }
    .real-book-fan { min-height: 390px; }
    .featured-book { width: 31%; min-width: 0; padding: 15px 10px; }
    .featured-book strong { font-size: 17px; }
    .book { width: 210px; height: 320px; }
    .book-one { left: 0; }
    .book-two { right: 0; }
    .testimonial-promise { grid-template-columns: 1fr; padding: 28px; }
    .footer-bottom { flex-direction: column; }
    .hero h1, .signature-hero h1 { overflow-wrap: anywhere; }
    .hero-actions { align-items: stretch; flex-direction: column; }
    .hero-actions .button { width: 100%; }
    .form, .form-card { width: 100%; min-width: 0; }
    img { max-width: 100%; }
}
