/* Mila Ellis – shared styles for content pages (horoscopes, signs, tools). Loaded after site.css + theme-light.css */
.top nav{gap:22px;font-size:15.5px}
.top nav a.on{color:#3d3550}
.menu-btn{display:none;background:none;border:1px solid #e3d6df;border-radius:999px;padding:8px 14px;font:500 14px var(--sans);color:#3d3550;cursor:pointer}
.mnav{display:none}
@media(max-width:980px){.top nav{display:none}.menu-btn{display:inline-block}
 .mnav.open{display:grid;position:fixed;inset:62px 0 auto 0;z-index:40;background:#fbf6f1;border-bottom:1px solid #eadfe4;padding:10px var(--gut) 18px;grid-template-columns:1fr 1fr;gap:4px 18px;box-shadow:0 20px 40px rgba(120,90,120,.12)}
 .mnav a{padding:11px 0;text-decoration:none;color:#3d3550;border-bottom:1px solid #f1e8ee;font-size:16px}}
.ph{padding:clamp(44px,7vw,90px) var(--gut) clamp(20px,3vw,34px);text-align:center;background:radial-gradient(60% 80% at 15% 0%,#f3e4e6,transparent 70%),radial-gradient(60% 80% at 90% 10%,#efeaf6,transparent 70%),#fbf6f1}
.ph .kicker{letter-spacing:.24em;text-transform:uppercase;font-size:13px;font-weight:500}
.ph h1{font-size:clamp(34px,5vw,58px);margin:12px auto 14px;max-width:16em}
.ph p{max-width:36em;margin:0 auto;color:#5c5470}
.ph .glyph{font:400 54px "DejaVu Sans",serif;color:#b08a52;line-height:1}
.wrap{max-width:980px;margin:0 auto;padding:clamp(18px,3vw,30px) var(--gut) clamp(48px,7vw,90px)}
.wrap.wide{max-width:1180px}
.crumbs{font-size:14px;color:#9a91ab;margin-bottom:14px}.crumbs a{color:#9a6f43;text-decoration:none}
.panel{background:#fff;border:1px solid #eadfe4;border-radius:20px;padding:clamp(20px,3vw,34px);box-shadow:0 20px 50px rgba(120,90,120,.07);margin-bottom:22px}
.panel h2{font-size:clamp(24px,2.6vw,32px);margin-bottom:10px}
.panel h3{font-size:20px;margin:18px 0 6px;color:#3d3550}
.panel p{color:#5c5470;margin-bottom:10px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0 0 22px}
.tabs a,.tabs button{font:500 15px var(--sans);padding:10px 18px;border-radius:999px;border:1px solid #e3d6df;background:#fff;color:#5c5470;text-decoration:none;cursor:pointer}
.tabs .on{background:#3d3550;color:#fff;border-color:#3d3550}
.signgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.signgrid a{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 8px;background:#fff;border:1px solid #eadfe4;border-radius:16px;text-decoration:none;color:#3d3550;transition:transform .15s,box-shadow .15s}
.signgrid a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(120,90,120,.12)}
.signgrid .g{font:400 30px "DejaVu Sans",serif;color:#b08a52}
.signgrid b{font:500 17px var(--serif)}
.signgrid small{font-size:12.5px;color:#9a91ab}
.signgrid a.on{border-color:#c9a46b;background:#fbf3e8}
@media(max-width:760px){.signgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.meters{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:6px 0 18px}
.meter{background:#fbf6f1;border-radius:14px;padding:12px 14px;text-align:center}
.meter i{display:block;font-style:normal;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#9a91ab}
.meter b{display:block;font:400 19px var(--serif);color:#b08a52;letter-spacing:2px;margin-top:4px}
@media(max-width:600px){.meters{grid-template-columns:repeat(2,1fr)}}
.sec{display:grid;grid-template-columns:120px 1fr;gap:6px 18px;padding:14px 0;border-top:1px solid #f1e8ee}
.sec h4{font:500 13px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#9a6f43;padding-top:4px}
.sec p{margin:0;color:#5c5470}
@media(max-width:600px){.sec{grid-template-columns:1fr}}
.tip{background:linear-gradient(135deg,#f3e4e6,#efeaf6);border-radius:16px;padding:18px 22px;margin-top:16px}
.tip b{display:block;font:500 12.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#8a6f9e;margin-bottom:4px}
.tip p{margin:0;color:#3d3550;font:400 19px/1.5 var(--serif)}
.lucky{display:flex;gap:22px;flex-wrap:wrap;margin-top:14px;font-size:15px;color:#7d7491}.lucky b{color:#3d3550}
.sky{font-size:14.5px;color:#9a91ab;margin-top:12px;font-style:italic}
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.chips a{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#fff;border:1px solid #eadfe4;border-radius:12px;text-decoration:none;color:#3d3550;font-size:15.5px}
.chips a span{color:#b08a52;font-weight:500}
.cta2{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;border:1.5px solid #d4b07c;border-radius:20px;padding:22px 26px;background:radial-gradient(70% 90% at 0% 0%,#f3e4e6,transparent 70%),#fff;margin:22px 0}
.cta2 h3{margin:0 0 4px;font-size:22px}.cta2 p{margin:0;color:#5c5470}
@media(max-width:640px){.cta2{grid-template-columns:1fr}}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}@media(max-width:760px){.two-col{grid-template-columns:1fr}}
ul.dots{list-style:none;padding:0;margin:0}ul.dots li{position:relative;padding:7px 0 7px 22px;color:#5c5470;border-bottom:1px solid #f1e8ee}
ul.dots li::before{content:"";position:absolute;left:3px;top:16px;width:7px;height:7px;border-radius:50%;background:#d4b07c}
.form-row{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.form-row label{display:flex;flex-direction:column;font-size:14px;color:#7d7491;gap:6px;flex:1 1 140px}
.form-row input,.form-row select{font:400 16px var(--sans);padding:12px;border:1px solid #e3d6df;border-radius:10px;background:#fff;color:#3d3550}
.bignum{font:400 clamp(60px,9vw,96px)/1 var(--serif);color:#b08a52}
.res{margin-top:20px}
.res[hidden]{display:none}
table.cal{width:100%;border-collapse:collapse;table-layout:fixed}
table.cal th{font:500 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#9a91ab;padding:8px 0}
table.cal td{vertical-align:top;border:1px solid #f1e8ee;padding:6px;height:86px;background:#fff;font-size:13px;color:#7d7491}
table.cal td.today{background:#fbf3e8;border-color:#d4b07c}
table.cal td.out{background:#fbf6f1;color:#c9c0d3}
table.cal .d{font:500 15px var(--serif);color:#3d3550}
table.cal .mph{font-size:20px;line-height:1.2}
table.cal .ms{font-size:12px}
table.cal .ev{display:block;font-size:11.5px;color:#9a6f43;font-weight:500}
@media(max-width:640px){table.cal td{height:64px;padding:3px;font-size:10.5px}table.cal .mph{font-size:15px}table.cal .ms{display:none}}
.card3d{perspective:1200px;width:220px;height:370px;margin:0 auto;cursor:pointer}
.card3d .in{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.card3d.flip .in{transform:rotateY(180deg)}
.card3d .face{position:absolute;inset:0;backface-visibility:hidden;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px rgba(80,60,90,.18)}
.card3d .front{transform:rotateY(180deg)}
.card3d.rev .front svg{transform:rotate(180deg)}
.qa details{border-bottom:1px solid #eadfe4;padding:14px 0}.qa summary{cursor:pointer;font:500 18px var(--serif);color:#3d3550}.qa details p{margin-top:8px;color:#5c5470}
.prose p{color:#5c5470;margin-bottom:12px}.prose h2{font-size:clamp(24px,2.6vw,32px);margin:26px 0 10px}

.foot{grid-template-columns:auto 1fr}.foot .disc{grid-column:1/-1;max-width:none;text-align:left;justify-self:start}.foot p a{display:inline-block;margin:0 18px 6px 0}
.panel .bignum,.panel p.bignum{color:#b08a52}
/* photo heroes */
.ph.photo{position:relative;text-align:left;min-height:clamp(340px,40vw,540px);display:flex;align-items:center;padding:clamp(44px,6vw,80px) var(--gut);overflow:hidden}
.ph.photo .bg{position:absolute;inset:0;background-size:cover;background-position:72% 45%}
.ph.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,241,.97) 0%,rgba(251,246,241,.9) 34%,rgba(251,246,241,.25) 58%,rgba(251,246,241,0) 70%)}
.ph.photo .in{position:relative;z-index:1;max-width:var(--max);margin:0 auto;width:100%}
.ph.photo h1{margin:12px 0 14px;max-width:11em}
.ph.photo p{margin:0;max-width:27em}
@media(max-width:760px){.ph.photo{display:block;padding:0 0 26px;min-height:0}.ph.photo .bg{position:relative;inset:auto;height:62vw;background-position:65% 40%}
 .ph.photo::after{inset:0 0 auto 0;height:62vw;background:linear-gradient(180deg,rgba(251,246,241,0) 55%,#fbf6f1 100%)}.ph.photo .in{padding:6px var(--gut) 0}}
@media(max-width:760px){.signgrid a{padding:14px 4px}.signgrid small{font-size:10.5px;white-space:nowrap;letter-spacing:-.01em}}
@media(min-width:761px){.ph.photo .bg{left:36%;background-position:50% 35%}
 .ph.photo::after{background:linear-gradient(90deg,#fbf6f1 0%,#fbf6f1 36%,rgba(251,246,241,.6) 41%,rgba(251,246,241,0) 52%)}}
@media(min-width:761px){.ph.photo h1{max-width:min(11em,33vw)}.ph.photo p,.ph.photo #retroNow{max-width:min(27em,32vw)!important}}
