
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&family=Spectral:ital,wght@0,300;0,400;0,500;1,300;1,400&display=swap');
:root{--bg:#08080b;--bg2:#111116;--bg3:#191922;--ink:#e9e5da;--ink2:#9a958a;--rule:#28262f;--rule2:#332f3c;--gold:#d4af57;--gold2:#8a6f2c;--ox:#8e2f2a;--shadow:rgba(0,0,0,.75)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:Spectral,"Iowan Old Style",Georgia,serif;font-weight:300;font-size:19.5px;line-height:1.66;-webkit-font-smoothing:antialiased;
 background-image:radial-gradient(ellipse at 50% -8%,rgba(212,175,87,.13),transparent 55%),radial-gradient(ellipse at 100% 100%,rgba(142,47,42,.10),transparent 52%)}
a{color:var(--gold)}
img{max-width:100%;display:block}
svg{display:block;max-width:100%}
.wrap{width:min(920px,92vw);margin:0 auto}
.wide{width:min(1240px,94vw);margin:0 auto}
header.mast{text-align:center;padding:70px 0 30px;border-bottom:1px solid var(--rule)}
header.mast .over{font-family:Cinzel,serif;letter-spacing:.34em;font-size:12px;color:var(--gold);text-transform:uppercase}
header.mast h1{font-family:Cinzel,serif;font-weight:400;font-size:clamp(48px,9vw,116px);letter-spacing:.02em;line-height:1;margin:16px 0 14px}
header.mast h1 span{display:block;color:var(--gold)}
header.mast .sub{font-style:italic;font-size:clamp(18px,2.2vw,23px);color:var(--ink2);max-width:880px;margin:0 auto}
header.mast .pair{margin-top:16px;font-size:15px;color:var(--ink2)}
nav.contents{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 16px;padding:14px 12px;border-bottom:1px solid var(--rule);font-family:Cinzel,serif;font-size:12px;letter-spacing:.13em;text-transform:uppercase;position:sticky;top:0;background:rgba(8,8,11,.94);backdrop-filter:blur(6px);z-index:5}
nav.contents a{text-decoration:none;color:var(--ink2)}nav.contents a:hover{color:var(--gold)}
section.hero{padding:40px 0 6px}
.herofig img{max-height:620px;object-fit:contain;margin:0 auto;background:#000}
article{padding-top:20px}
article p{margin:0 0 22px}
article h2{font-family:Cinzel,serif;font-weight:400;font-size:clamp(28px,4.2vw,46px);margin:72px 0 22px;line-height:1.1;letter-spacing:.03em}
article h2 small{display:block;font-family:Cinzel,serif;font-size:12px;letter-spacing:.44em;color:var(--gold);margin-bottom:10px}
article h3.subhead{font-family:Cinzel,serif;font-weight:400;font-size:22px;letter-spacing:.12em;margin:40px 0 14px;color:var(--gold)}
.dropcap::first-letter{font-family:Cinzel,serif;font-weight:600;font-size:4.1em;float:left;line-height:.86;margin:8px 12px 0 0;color:var(--gold)}
b{color:var(--ink);font-weight:500}
.plate{background:var(--bg2);padding:11px;border:1px solid var(--rule);box-shadow:0 16px 36px -20px var(--shadow);margin:24px 0;border-radius:3px}
.plate img{max-height:540px;object-fit:contain;margin:0 auto;background:#f6f2e8}
.plate figcaption{margin-top:10px;font-size:14px;color:var(--ink2);line-height:1.5}
.plate figcaption b{font-family:Cinzel,serif;font-weight:400;display:block;margin-bottom:3px;color:var(--ink);font-size:14px;letter-spacing:.04em}
.plates{display:grid;gap:16px;margin:26px 0}
.plates.two{grid-template-columns:1fr 1fr}.plates.three{grid-template-columns:1fr 1fr 1fr}
@media(max-width:860px){.plates.two,.plates.three{grid-template-columns:1fr}}
.plates .plate{margin:0}.plates .plate img{max-height:340px}
.scripts{display:grid;gap:18px;margin:26px 0}
.script{display:grid;grid-template-columns:300px 1fr;gap:22px;background:var(--bg2);border:1px solid var(--rule);border-radius:3px;padding:20px 22px;align-items:start}
.script .plate{margin:0}.script .plate img{max-height:300px}.script h3{margin:0 0 8px}.script p{margin:0;font-size:16px}
@media(max-width:760px){.script{grid-template-columns:1fr}}
.plates.gems{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.plates.gems .plate{padding:8px;background:var(--bg3)}.plates.gems .plate img{max-height:260px;width:100%;object-fit:contain}.plates.gems figcaption{font-size:12px}
.reqs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:26px 0}
.req{background:var(--bg2);border:1px solid var(--rule);padding:22px 24px;border-radius:3px;position:relative}
.req .num{font-family:Cinzel,serif;font-size:12px;letter-spacing:.3em;color:var(--gold)}
.req h4{font-family:Cinzel,serif;font-weight:600;font-size:21px;margin:6px 0 10px}
.req p{font-size:16px;color:var(--ink2);margin:0;line-height:1.55}
.tablewrap{overflow-x:auto;margin:16px 0 30px}
table.ptable{width:100%;border-collapse:collapse;font-size:15.5px;background:var(--bg2);border:1px solid var(--rule)}
table.ptable th{font-family:Cinzel,serif;font-weight:400;font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:left;padding:12px 12px;color:var(--gold);border-bottom:1px solid var(--rule);white-space:nowrap}
table.ptable td{padding:10px 12px;border-bottom:1px solid var(--rule);color:var(--ink2)}
table.ptable tr:last-child td{border-bottom:0}
table.ptable td:first-child{color:var(--ink);white-space:nowrap}
table.ptable .g{font-size:19px;margin-right:5px}
.planets{display:grid;gap:20px}
.planet{background:var(--bg2);border:1px solid var(--rule);border-left:3px solid var(--pc);border-radius:3px;padding:22px 24px}
.planet header{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:14px}
.planet .glyph{font-size:26px;color:var(--pc)}
.planet h3{font-family:Cinzel,serif;font-weight:600;font-size:27px;flex:1}
.planet .order{font-family:Cinzel,serif;font-size:12px;letter-spacing:.18em;color:var(--gold)}
.pbody{display:grid;grid-template-columns:250px 1fr;gap:26px;align-items:start}
@media(max-width:760px){.pbody{grid-template-columns:1fr}}
svg.kamea{width:100%;max-width:250px;background:var(--bg3);border-radius:2px;padding:4px}
.planet .intent{font-size:16.5px;color:var(--ink2);margin-bottom:12px;line-height:1.55}
.planet dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:15px}
.planet dt{font-family:Cinzel,serif;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);padding-top:3px}
.planet dd{color:var(--ink2)}
.sigilbox{display:grid;grid-template-columns:1fr 380px;gap:30px;background:var(--bg2);border:1px solid var(--rule);border-radius:4px;padding:26px 28px;margin:22px 0 8px}
@media(max-width:860px){.sigilbox{grid-template-columns:1fr}}
.sigctl label{display:block;font-family:Cinzel,serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 6px}
.sigctl input,.sigctl select{width:100%;background:var(--bg3);border:1px solid var(--rule2);color:var(--ink);padding:12px 14px;font:inherit;font-size:17px;margin-bottom:16px;border-radius:2px}
.sigctl input{font-family:Cinzel,serif;letter-spacing:.16em;text-transform:uppercase}
.sigctl input:focus,.sigctl select:focus{outline:none;border-color:var(--gold)}
.sighint{font-size:13px;color:var(--ink2);line-height:1.6;font-family:Spectral,serif}
table.sigtable{width:100%;border-collapse:collapse;font-size:13.5px;margin-top:14px}
table.sigtable th{font-family:Cinzel,serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);text-align:left;padding:5px 8px;border-bottom:1px solid var(--rule)}
table.sigtable td{padding:4px 8px;color:var(--ink2);border-bottom:1px solid var(--rule)}
.sigout svg{width:100%;background:var(--bg3);border-radius:3px}
.sigcap{margin-top:10px;font-size:14px;font-style:italic;color:var(--gold);text-align:center}
.books{display:grid;gap:20px}
.book{display:grid;grid-template-columns:280px 1fr;gap:24px;background:var(--bg2);border:1px solid var(--rule);border-radius:3px;padding:22px 24px;align-items:start}
@media(max-width:760px){.book{grid-template-columns:1fr}}
.book .plate{margin:0;padding:8px;background:var(--bg3)}
.book .plate img{max-height:260px}
.book h3{font-family:Cinzel,serif;font-weight:600;font-size:24px;line-height:1.15}
.book .when{display:block;font-family:Cinzel,serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:6px 0 10px}
.book p{font-size:16.5px;color:var(--ink2);margin:0;line-height:1.58}
.words{display:grid;gap:20px}
.word{background:var(--bg2);border:1px solid var(--rule);border-radius:3px;padding:22px 24px}
.word h3{font-family:Cinzel,serif;font-weight:600;font-size:21px;letter-spacing:.06em;margin-bottom:12px;color:var(--gold)}
.wgrid{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}
@media(max-width:760px){.wgrid{grid-template-columns:1fr}}
.word p{font-size:16.5px;color:var(--ink2);margin:0;line-height:1.58}
.word .plate{margin:0;padding:8px;background:var(--bg3)}.word .plate img{max-height:230px}
.staves{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}
@media(max-width:760px){.staves{grid-template-columns:1fr}}
.stave{background:var(--bg2);border:1px solid var(--rule);border-radius:3px;padding:18px 20px}
.stave .plate{margin:0 0 12px;padding:8px;background:var(--bg3)}.stave .plate img{max-height:240px}
.stave h4{font-family:Cinzel,serif;font-weight:600;font-size:20px;margin-bottom:8px;color:var(--gold)}
.stave p{font-size:16px;color:var(--ink2);margin:0;line-height:1.55}
.livings{display:grid;gap:20px}
.living{background:var(--bg2);border:1px solid var(--rule);border-radius:3px;padding:22px 24px}
.living h3{font-family:Cinzel,serif;font-weight:600;font-size:22px;margin-bottom:10px;color:var(--gold)}
.living p{font-size:16.5px;color:var(--ink2);line-height:1.58;margin-bottom:14px}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.lgrid .plate{margin:0;padding:8px;background:var(--bg3)}
.lgrid .plate img{max-height:220px;width:100%;object-fit:cover}
.lgrid .plate figcaption{font-size:12px}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
section.offer{margin-top:80px;padding:64px 0;border-top:1px solid var(--rule);background:linear-gradient(180deg,var(--bg2),var(--bg))}
.offer h2{font-family:Cinzel,serif;font-weight:400;font-size:clamp(32px,4.8vw,58px);text-align:center;line-height:1.05;letter-spacing:.04em}
.offer .lede{text-align:center;font-style:italic;color:var(--ink2);max-width:820px;margin:18px auto 40px;font-size:1.05em}
.items{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.item{background:var(--bg2);border:1px solid var(--rule);padding:28px 28px 24px;box-shadow:0 14px 30px -22px var(--shadow);border-radius:3px}
.item .ref{font-family:Cinzel,serif;letter-spacing:.26em;font-size:11px;color:var(--gold);text-transform:uppercase}
.item h3{font-family:Cinzel,serif;font-weight:600;font-size:24px;margin:8px 0 12px}
.item p{font-size:16.5px;color:var(--ink2);margin-bottom:12px;line-height:1.55}
.item .terms{font-size:14.5px;font-style:italic;color:var(--ink2);border-top:1px solid var(--rule);padding-top:10px;margin-top:6px}
.item .price{font-family:Cinzel,serif;color:var(--gold);font-size:12.5px;letter-spacing:.14em;margin-top:10px;text-transform:uppercase}
.btn{display:inline-block;text-decoration:none;font-family:Cinzel,serif;letter-spacing:.2em;font-size:12.5px;text-transform:uppercase;padding:14px 26px;border:1px solid var(--gold);color:var(--gold);background:transparent;transition:background .2s,color .2s;cursor:pointer;border-radius:2px}
.btn:hover,.btn.solid{background:var(--gold);color:var(--bg)}
.center{text-align:center}
.terms-box{max-width:860px;margin:40px auto 0;font-size:16.5px;color:var(--ink2);border:1px solid var(--rule);padding:22px 26px;background:var(--bg2);border-radius:3px}
.terms-box b{font-family:Cinzel,serif;color:var(--ink);font-size:14px;letter-spacing:.06em}
section.enquire{padding:56px 0 72px;border-top:1px solid var(--rule)}
.enquire h2{font-family:Cinzel,serif;font-weight:400;font-size:clamp(26px,3.4vw,36px)}
.enquire .lead{color:var(--ink2);font-style:italic;margin:10px 0 18px}
.enquire .two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
@media(max-width:820px){.enquire .two{grid-template-columns:1fr}}
input,textarea{width:100%;background:var(--bg2);border:1px solid var(--rule);color:var(--ink);padding:12px 14px;font:inherit;font-size:17px;margin-bottom:12px;border-radius:2px}
input:focus,textarea:focus{outline:none;border-color:var(--gold)}
textarea{min-height:140px;resize:vertical}
.row{display:grid;gap:12px;grid-template-columns:1fr 1fr}
@media(max-width:600px){.row{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.note{margin-top:10px;font-size:15.5px;font-style:italic;color:var(--ink2);min-height:18px}
.note.ok{color:#8cc48c}.note.err{color:#d98c6a}
footer{border-top:1px solid var(--rule);padding:34px 0 48px;font-size:14px;color:var(--ink2);text-align:center;width:min(920px,92vw);margin:0 auto}
footer a{color:var(--ink2)}
footer .links{margin-bottom:12px;font-family:Cinzel,serif;letter-spacing:.14em;font-size:12px;text-transform:uppercase}
footer .links a{margin:0 9px;text-decoration:none}
