
:root{
  --navy:#071828; --navy2:#102d45; --ink:#17212b; --paper:#f6f2ea;
  --cream:#fffdf8; --gold:#c99943; --muted:#68727c; --line:#d9d4ca;
  --blue:#1f668d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.62}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
.wrap{width:min(1180px,92vw);margin:auto}
.site-header{background:rgba(7,24,40,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.15);position:sticky;top:0;z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 0}
.brand{text-decoration:none;display:flex;flex-direction:column;min-width:220px}
.brand strong{font-family:Georgia,serif;font-size:1.55rem;letter-spacing:.02em}
.brand span{text-transform:uppercase;font-size:.67rem;letter-spacing:.15em;color:#cdd9e2}
.nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 18px}
.nav a{text-decoration:none;font-size:.9rem;color:#eef5fa}
.nav a:hover,.nav a:focus{color:#f3c66b;text-decoration:underline;text-underline-offset:5px}
.hero{min-height:650px;background:linear-gradient(90deg,rgba(7,24,40,.92) 0%,rgba(7,24,40,.72) 43%,rgba(7,24,40,.12) 75%),url("../images/perth-scotland-hero.jpg") center/cover no-repeat;color:white;display:grid;align-items:center}
.hero-copy{max-width:640px;padding:80px 0}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.77rem;font-weight:700;color:#f4cf85}
.hero h1,.page-hero h1,.book-detail h1{font-family:Georgia,serif;font-weight:400;line-height:1.06;margin:.25em 0;font-size:clamp(2.8rem,7vw,6rem)}
.hero p{font-size:1.18rem;max-width:56ch;color:#e6eef4}
.button{display:inline-block;background:var(--gold);color:#0e1d27;text-decoration:none;padding:.78rem 1.15rem;border-radius:4px;font-weight:700;margin:.25rem .35rem .25rem 0}
.button.secondary{background:transparent;color:white;border:1px solid rgba(255,255,255,.6)}
.button.dark{background:var(--navy);color:#fff}
.button.small{font-size:.85rem;padding:.55rem .8rem}
.section{padding:70px 0}
.section.alt{background:var(--paper)}
.section h2,.section h3,.page-hero h1{font-family:Georgia,serif}
.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.section-title h2{font-size:2.4rem;margin:0}
.section-title p{margin:0;color:var(--muted)}
.books-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.book-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 10px 30px rgba(20,30,40,.06);display:flex;flex-direction:column}
.book-card .cover{aspect-ratio:2/3;background:#f3f1eb;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8px;box-sizing:border-box}
.book-card .cover img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center}
.book-card .content{padding:20px;display:flex;flex-direction:column;flex:1}
.book-card h3{font-family:Georgia,serif;margin:.35rem 0 .55rem;font-size:1.35rem;line-height:1.2}
.book-card p{font-size:.93rem;color:#53616d}
.status{display:inline-block;width:max-content;padding:.25rem .5rem;border-radius:99px;background:#eef2f5;color:#30404d;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:700}
.card-actions{margin-top:auto}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.feature{padding:28px;background:white;border:1px solid var(--line);border-radius:10px}
.feature h3{margin-top:0;font-family:Georgia,serif;font-size:1.4rem}
.page-hero{padding:70px 0;background:linear-gradient(135deg,var(--navy),var(--navy2));color:white}
.page-hero h1{font-size:clamp(2.4rem,5vw,4.2rem)}
.page-hero p{max-width:70ch;color:#d9e4eb}
.book-detail{display:grid;grid-template-columns:minmax(250px,360px) 1fr;gap:54px;align-items:start}
.book-detail .book-cover{border-radius:8px;overflow:hidden;box-shadow:0 24px 50px rgba(0,0,0,.18)}
.book-detail h1{font-size:clamp(2.7rem,6vw,5rem);color:var(--navy)}
.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-weight:700;font-size:.78rem}
.lead{font-family:Georgia,serif;font-size:1.35rem;color:#334450}
.meta{display:flex;gap:10px;flex-wrap:wrap;margin:1.2rem 0}
.meta span{border:1px solid var(--line);padding:.32rem .55rem;border-radius:99px;font-size:.78rem;color:#53616d}
.quote{border-left:4px solid var(--gold);padding:10px 0 10px 22px;font-family:Georgia,serif;font-size:1.25rem;color:#394956}
.prose{max-width:820px}
.prose h2{font-family:Georgia,serif;margin-top:2rem}
.post-list article{padding:24px 0;border-bottom:1px solid var(--line)}
.post-list h2{margin:.2rem 0;font-size:1.55rem}
.date{color:var(--muted);font-size:.85rem}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.contact-card{padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff}
.site-footer{background:var(--navy);color:#dfe8ef;padding:50px 0 25px;margin-top:50px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:30px}
.site-footer a{color:#eef6fb}
.fine{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;margin-top:30px;color:#9eb0bd;font-size:.8rem}
.notice{background:#fff3cd;border:1px solid #eed889;padding:14px 16px;border-radius:8px}
.catalog-note{font-size:.9rem;color:#65727c}
.skip{position:absolute;left:-9999px}
@media(max-width:960px){
  .header-inner{align-items:flex-start;flex-direction:column}
  .nav{justify-content:flex-start}
  .books-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-grid,.contact-cards,.footer-grid{grid-template-columns:1fr}
  .book-detail{grid-template-columns:1fr}
  .book-detail .book-cover{max-width:340px}
}
@media(max-width:560px){
  .hero{min-height:560px;background-position:65% center}
  .hero-copy{padding:55px 0}
  .books-grid{grid-template-columns:1fr}
  .section{padding:48px 0}
  .nav{gap:8px 13px}
}


/* ===== Website Option 1 ===== */
.site-header{background:#081a2b;box-shadow:0 1px 0 rgba(255,255,255,.1)}
.header-inner{min-height:78px}
.brand strong{font-size:1.72rem}
.brand span{font-size:.66rem;letter-spacing:.18em}
.nav{align-items:center}
.nav .active{color:#f1c976;border-bottom:2px solid #f1c976}
.nav .journey{background:#cfa24e;color:#0b1d2c!important;padding:.55rem .78rem;border-radius:3px;font-weight:700;border-bottom:0}
.nav .journey:hover{background:#e3bc70;text-decoration:none}

.option1-hero{
  min-height:700px;
  position:relative;
  background-image:url("../images/perth-scotland-hero.jpg");
  background-position:center center;
  background-size:cover;
  overflow:hidden;
}
.option1-hero .hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,19,33,.95) 0%,rgba(5,19,33,.72) 36%,rgba(5,19,33,.18) 63%,rgba(5,19,33,.08) 100%),
    linear-gradient(0deg,rgba(5,19,33,.20),rgba(5,19,33,.05));
}
.option1-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 330px;align-items:center;min-height:700px}
.option1-hero .hero-copy{padding:80px 0;max-width:650px}
.option1-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.2rem,6vw,5.7rem);line-height:.98;margin:.18em 0 .28em;letter-spacing:-.02em}
.hero-intro{font-family:Georgia,serif;font-size:1.2rem;line-height:1.55;max-width:590px}
.signature{font-family:"Brush Script MT","Segoe Script",cursive;font-size:2.1rem;margin:25px 0 12px;color:#f3d89c;transform:rotate(-2deg);width:max-content}
.option1-hero blockquote{margin:0 0 22px;padding:0;border:0;font-family:Georgia,serif;font-style:italic;color:#eef4f8;font-size:1.05rem}
.option1-hero blockquote span{display:block;font-family:Arial,sans-serif;font-style:normal;font-size:.78rem;color:#cbd7e0;margin-top:5px}
.hero-motto{justify-self:end;text-align:left;font-family:Georgia,serif;font-size:2.2rem;line-height:1.1;font-style:italic;color:#fff;text-shadow:0 2px 15px rgba(0,0,0,.4);padding-right:15px}
.featured-section{background:#fbfaf6}
.option1-title{align-items:flex-end}
.eyebrow.dark{color:#a97925}
.view-all{font-weight:700;color:#1a4f6e;text-decoration:none}
.featured-books-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.featured-book{display:flex;flex-direction:column}
.featured-cover{display:flex;align-items:center;justify-content:center;aspect-ratio:2/3;overflow:hidden;background:#f3f1eb;box-shadow:0 14px 28px rgba(20,30,40,.14);border-radius:2px;padding:8px;box-sizing:border-box}
.featured-cover img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center;transition:transform .25s ease}
.featured-cover:hover img{transform:none}
.featured-copy{padding:16px 2px 0}
.featured-copy h3{font-family:Georgia,serif;font-size:1.15rem;line-height:1.15;margin:.2rem 0 .55rem;color:#13283b}
.featured-copy p{font-size:.88rem;color:#5f6c76;min-height:72px}
.learn{display:inline-block;text-decoration:none;font-weight:700;font-size:.85rem;color:#174e70;border-bottom:1px solid #174e70}
.three-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.panel{min-height:240px;border-radius:5px;padding:28px;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;position:relative;overflow:hidden;background:#18334a}
.panel:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,15,25,.88),rgba(5,15,25,.25));z-index:0}
.panel>*{position:relative;z-index:1}
.panel span{font-family:Georgia,serif;font-size:1.5rem;margin-bottom:8px}
.panel small{font-size:.9rem;max-width:36ch;color:#e5edf2}
.panel b{font-size:.82rem;margin-top:12px;color:#f3cf82}
.panel-about{background:linear-gradient(135deg,#544a3a,#b58f5f)}
.panel-blog{background:linear-gradient(135deg,#223a4c,#6d7a81)}
.panel-news{background:linear-gradient(135deg,#142b42,#667d73)}
.journey-band{background:#10283c;color:#fff;padding:52px 0}
.journey-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}
.journey-grid h2{font-family:Georgia,serif;font-size:2.2rem;font-weight:400;margin:0}
.journey-grid h3{font-family:Georgia,serif;font-size:1.5rem;margin:0}
.journey-grid p{color:#d1dce5}
@media(max-width:1050px){
  .featured-books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .option1-hero-grid{grid-template-columns:1fr 220px}
}
@media(max-width:760px){
  .option1-hero-grid{grid-template-columns:1fr}
  .hero-motto{display:none}
  .featured-books-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .three-panels,.journey-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .featured-books-grid{grid-template-columns:1fr}
  .option1-hero{min-height:610px;background-position:62% center}
}


/* Reader Team database form */
.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:56px;align-items:start}
.reader-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;box-shadow:0 12px 30px rgba(20,30,40,.06)}
.reader-form label,.reader-form legend{font-weight:700;color:#203240}
.reader-form>label{display:block;margin-top:15px;margin-bottom:6px}
.reader-form input[type="text"],.reader-form input[type="email"]{width:100%;padding:.78rem .8rem;border:1px solid #c9cfd4;border-radius:5px;font:inherit;background:#fff}
.reader-form input:focus{outline:3px solid rgba(31,102,141,.18);border-color:#1f668d}
.reader-form fieldset{border:0;padding:0;margin:22px 0}
.reader-form legend{margin-bottom:8px}
.reader-form .check{display:flex;gap:9px;align-items:flex-start;font-weight:400;margin:7px 0}
.reader-form .check input{margin-top:.33rem}
.reader-form .consent{font-weight:700;margin:22px 0 8px}
.form-privacy{font-size:.86rem;color:#69757d}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:820px){.reader-layout{grid-template-columns:1fr}}


/* Website contact forms */
.contact-form-section{scroll-margin-top:90px}
.contact-form-section.alt{background:#f5f3ed}
.contact-form-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,1.2fr);gap:56px;align-items:start}
.contact-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;box-shadow:0 12px 30px rgba(20,30,40,.06)}
.contact-form>label{display:block;margin-top:15px;margin-bottom:6px;font-weight:700;color:#203240}
.contact-form input[type="text"],.contact-form input[type="email"],.contact-form select,.contact-form textarea{width:100%;padding:.78rem .8rem;border:1px solid #c9cfd4;border-radius:5px;font:inherit;background:#fff;color:#172733;box-sizing:border-box}
.contact-form textarea{resize:vertical;min-height:150px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid rgba(31,102,141,.18);border-color:#1f668d}
.contact-form .check{display:flex;gap:9px;align-items:flex-start;font-weight:400;margin:18px 0 8px}
.contact-form .check input{margin-top:.33rem}
.contact-form .consent{font-weight:700}
@media(max-width:820px){.contact-form-wrap{grid-template-columns:1fr}}

.contact-form .optional{font-weight:400;color:#65727b}
.contact-form select{appearance:auto}


/* Separate direct contact forms */
.contact-intro{max-width:760px;margin-bottom:32px}
.contact-forms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.contact-card{background:#f8f7f3;border:1px solid var(--line);border-radius:12px;padding:18px}
.contact-card-heading{padding:4px 6px 16px}
.contact-card-heading h3{font-family:Georgia,serif;font-size:1.45rem;margin:.15rem 0 .3rem;color:#172733}
.contact-card-heading p{margin:.35rem 0;color:#5b6871}
.contact-destination{font-weight:700;color:#7a5d28!important;word-break:break-word}
.contact-card .contact-form{padding:22px;box-shadow:none}
.contact-card .contact-form textarea{min-height:130px}
.contact-card .button{width:100%}
.contact-confirmation-note{text-align:center;margin:28px auto 0;color:#52616b;font-size:.95rem}
@media(max-width:1050px){.contact-forms-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.contact-forms-grid{grid-template-columns:1fr}.contact-card{padding:12px}.contact-card .contact-form{padding:20px}}


/* 28 Sep 2026 final production cover fit */
.book-card .cover,.featured-cover{display:flex;align-items:center;justify-content:center;background:#10243a;}
.book-card .cover img,.featured-cover img{width:100%;height:100%;object-fit:contain;object-position:center;}
.book-detail .book-cover{display:flex;align-items:center;justify-content:center;background:#10243a;}
.book-detail .book-cover img{width:100%;height:auto;max-height:78vh;object-fit:contain;object-position:center;}
@media(max-width:640px){.book-detail .book-cover{max-width:min(88vw,340px);margin:0 auto}.book-detail .book-cover img{max-height:none}}


/* 28 Sep 2026 cover-centering confirmation */
.book-card .cover,
.featured-cover {
    display:flex;
    align-items:center;
    justify-content:center;
}
.book-card .cover img,
.featured-cover img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center center;
}

/* 30 Sep 2026 — coordinated temporary covers for family-series titles awaiting approved family art */
.placeholder-cover{position:relative;overflow:hidden;color:white;text-align:center;background:#17324a!important;border:1px solid rgba(255,255,255,.15)}
.placeholder-cover:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.18),transparent 38%),linear-gradient(145deg,rgba(255,255,255,.06),rgba(0,0,0,.18));}
.placeholder-cover-inner{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9%;box-sizing:border-box;font-family:Georgia,serif}
.placeholder-cover .series{font-size:clamp(10px,1.1vw,14px);letter-spacing:.13em;font-weight:700}.placeholder-cover .series.big{font-size:clamp(16px,1.75vw,23px);letter-spacing:.06em;margin-bottom:10%}
.placeholder-cover .book-label{font:700 10px/1.2 Arial,sans-serif;letter-spacing:.2em;opacity:.8}.placeholder-cover .country{font-size:clamp(22px,2.5vw,34px);line-height:1.02;font-weight:800;margin:.3em 0}.placeholder-cover .adventure-title{font-size:clamp(13px,1.35vw,18px);line-height:1.2;max-width:95%}.placeholder-cover .author{margin-top:auto;font:700 clamp(9px,1vw,12px)/1.2 Arial,sans-serif;letter-spacing:.16em}
.placeholder-cover.qatar{background:#a86628!important}.placeholder-cover.oman{background:#735438!important}.placeholder-cover.indonesia{background:#1f6a57!important}.placeholder-cover.uae{background:#2f5f86!important}.placeholder-cover.saudi{background:#315f45!important}.placeholder-cover.philippines{background:#316b91!important}
.book-detail .book-cover.placeholder-cover{aspect-ratio:2/3;min-height:520px}
@media(max-width:640px){.book-detail .book-cover.placeholder-cover{min-height:0;aspect-ratio:2/3}}

.placeholder-cover.china{background:#8a3232!important}.placeholder-cover.newzealand{background:#2f6970!important}.placeholder-cover.university{background:#5a4a78!important}

/* 01 Oct 2026 — six-cover correction: portrait book-cover geometry, no cropping */
.featured-cover, .book-card .cover, .book-cover { aspect-ratio: 2 / 3; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.featured-cover img, .book-card .cover img, .book-cover img { width: 100%; height: 100%; object-fit: contain !important; object-position: center; display: block; }

.six-cover-showcase{padding:2rem 0}.six-cover-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;align-items:start}.six-cover-grid img{width:100%;aspect-ratio:2/3;object-fit:contain;display:block;border-radius:10px}.six-cover-grid a{display:block}@media(max-width:1000px){.six-cover-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.six-cover-grid{grid-template-columns:repeat(2,1fr)}}

/* Neville artwork fit correction: keep the complete book jacket visible */
img[src*="cover"], .book-cover img, .book-card img, .book-card__image img, .book-cover, .book-card__image { object-fit: contain !important; object-position: center center !important; }
img[src*="cover"] { max-width: 100%; height: auto; }
.book-card img, .book-cover img { width: 100%; object-fit: contain !important; }

/* Author photograph: preserve the supplied image proportions without cropping. */
.author-photo{float:left;margin:0 1.5rem 1rem 0;max-width:251px}.author-photo img,.author-introduction img{display:block;width:100%;height:auto;object-fit:contain;border-radius:8px}.author-introduction-inner{display:flex;align-items:center;gap:2rem}.author-introduction-inner>img{width:190px;max-width:35%;flex-shrink:0}@media(max-width:600px){.author-photo{float:none;margin:0 auto 1rem}.author-introduction-inner{flex-direction:column;align-items:flex-start}.author-introduction-inner>img{max-width:190px}}

/* Perth is the actual homepage hero, not an unused design mockup. */
.perth-hero{position:relative;background:#0b2944;line-height:0}.perth-hero img{display:block;width:100%;height:auto;object-fit:contain}.perth-hero-link{position:absolute;inset:0}.perth-intro{background:#f7f5f0;padding:24px 0;text-align:center}.perth-intro h2{font-family:Georgia,serif;color:#102b4c;font-size:clamp(1.6rem,3vw,2.6rem);margin:0 0 8px}.perth-intro p{max-width:780px;margin:0 auto 12px;line-height:1.55}.perth-intro a{color:#795612;font-weight:700}

/* Final graphics fit: no cropping, stretching or clipped jackets */
.book-card .cover,.featured-cover,.book-detail .book-cover{overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#10243a!important;aspect-ratio:2/3!important}
.book-card .cover img,.featured-cover img,.book-detail .book-cover img,.six-cover-grid img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center center!important;transform:none!important}
.perth-hero img{width:100%!important;height:auto!important;object-fit:contain!important}

/* Final book-art containment and responsive fit */
.book-card .cover,.featured-cover,.book-detail .book-cover{aspect-ratio:2/3!important;background:#10243a!important;overflow:hidden!important}
.book-card .cover img,.featured-cover img,.book-detail .book-cover img,.six-cover-grid img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
.perth-hero img{width:100%!important;height:auto!important;object-fit:contain!important}

/* Approved Perth-and-gold author gallery: 8 Nov 2026 */
.perth-hero {overflow:hidden;background:#061d3a;}
.perth-hero img {display:block;width:100%;height:auto;object-fit:contain;object-position:center;}
.featured-cover {display:flex;align-items:center;justify-content:center;overflow:hidden;background:#092447;border:1px solid #b79b4d;border-radius:3px;}
.featured-cover img {display:block;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:center;}
@media(max-width:640px){.perth-hero img{width:100%;height:auto;object-fit:contain}.featured-cover img{object-fit:contain}}

/* Perth Gold refinement: consistent responsive book art and accessible navigation */
.hero{background-position:center,center 46%;min-height:clamp(480px,72vh,760px)}
.hero-copy{max-width:690px;text-shadow:0 2px 14px rgba(0,0,0,.28)}
.book-card .cover{aspect-ratio:2/3;padding:12px;background:#f3f0e9}
.book-card .cover img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transition:transform .25s ease}
.book-card:hover .cover img{transform:scale(1.025)}
.book-card{min-width:0}
.book-card .content{overflow-wrap:anywhere}
:focus-visible{outline:3px solid #c99943;outline-offset:3px}
@media(max-width:900px){.books-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-inner{flex-wrap:wrap}.nav{justify-content:flex-start}}
@media(max-width:580px){.books-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.book-card .cover{padding:6px}.book-card .content{padding:12px}.book-card h3{font-size:1.05rem}.hero{min-height:520px;background-image:linear-gradient(90deg,rgba(7,24,40,.92),rgba(7,24,40,.52)),url("../images/perth-scotland-hero.jpg");background-position:center,center}.hero-copy{padding:56px 0}.section{padding:45px 0}}
@media(max-width:360px){.books-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.book-card .cover img{transition:none}.book-card:hover .cover img{transform:none}}

/* Rev4 finishing pass: preserve approved artwork and consistent visual rhythm. */
:root{color-scheme:light}
img{max-width:100%}
.perth-hero{isolation:isolate}
.perth-hero img{width:100%!important;height:auto!important;aspect-ratio:1672/250;object-fit:contain!important}
.perth-hero-link:focus-visible{outline:4px solid #d6ae55;outline-offset:-5px}
.featured-cover,.book-card .cover,.book-detail .book-cover{box-sizing:border-box;aspect-ratio:2/3!important;overflow:hidden!important}
.featured-cover img,.book-card .cover img,.book-detail .book-cover img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
.featured-book,.book-card{min-width:0}
.featured-copy,.book-card .content{overflow-wrap:break-word}
.nav a,.view-all,.learn{transition:color .18s ease,background-color .18s ease}
@media(max-width:700px){.perth-intro{padding:22px 12px}.perth-intro h2{line-height:1.15}.header-inner{gap:12px}.nav{row-gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Rev5 gold-framed book covers and visible author credit */
.book-card .cover,.featured-cover,.book-detail .book-cover,.six-cover-grid a{position:relative;aspect-ratio:2/3;padding:0!important;border:5px solid #c9a34c!important;border-radius:8px;box-sizing:border-box;overflow:hidden;background:#10243a;box-shadow:inset 0 0 0 1px #f5dc96,0 9px 22px rgba(20,30,40,.17)}
.book-card .cover img,.featured-cover img,.book-detail .book-cover img,.six-cover-grid img{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;border-radius:0!important}
.book-card .cover::after,.featured-cover::after,.book-detail .book-cover:not(.placeholder-cover)::after,.six-cover-grid a::after{content:'GRANT JOHN NEVILLE';position:absolute;z-index:3;bottom:0;left:0;right:0;padding:8px 3px;text-align:center;color:#f5d994;background:#10243a;font:700 clamp(10px,1vw,13px)/1.1 Georgia,serif;letter-spacing:.13em;pointer-events:none}
.six-cover-grid a{display:block}.six-cover-grid img{aspect-ratio:2/3}
.book-card .cover.placeholder-cover::after,.book-detail .book-cover.placeholder-cover::after{content:none}
.placeholder-cover .author{font-size:0!important}.placeholder-cover .author::after{content:'GRANT JOHN NEVILLE';font-size:12px}
@media(max-width:640px){.book-card .cover::after,.featured-cover::after,.book-detail .book-cover:not(.placeholder-cover)::after,.six-cover-grid a::after{font-size:10px}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.view-all{white-space:nowrap}

@media(max-width:600px){.perth-hero img{aspect-ratio:830/250!important}}

/* Final cover alignment: no outer author strips, no crop or stretch */
.featured-cover,.book-card .cover,.book-detail .book-cover{padding:8px!important;aspect-ratio:2/3!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
.featured-cover img,.book-card .cover img,.book-detail .book-cover img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center center!important;transform:none!important}
