/* The landing-page sculpture and glass badge carry through every interior page. */
body.interior {
  position: relative;
  isolation: isolate;
  background: radial-gradient(ellipse at 4% 4%, #65405b72, transparent 46rem),
              radial-gradient(ellipse at 95% 68%, #3d3b7244, transparent 50rem), #14111f;
}
body.interior::before {
  content: "";
  position: fixed;
  z-index: 0;
  pointer-events: none;
  width: min(78vw, 1030px);
  height: 108svh;
  left: max(20vw, calc(50% - 140px));
  top: -2svh;
  background: url('/landing/assets/philosopher-cutout.webp') center / contain no-repeat;
  opacity: .17;
  mix-blend-mode: screen;
  -webkit-mask-image: radial-gradient(ellipse 68% 74% at 50% 48%, #000 43%, transparent 100%);
  mask-image: radial-gradient(ellipse 68% 74% at 50% 48%, #000 43%, transparent 100%);
  animation: sculpture-breathe 18s ease-in-out infinite alternate;
}
body.interior > * { position: relative; z-index: 1; }
body.interior > .skip-link { position: fixed; z-index: 20; }

.interior .site-nav { background: linear-gradient(90deg, #21192788, #17142344); }
.interior .site-brand { gap: 13px; }
.interior .brand-gem {
  isolation: isolate;
  display: grid;
  place-items: center;
  width: 36px;
  height: 37px;
  padding: 8px;
  border: 1px solid #ffffff65;
  border-radius: 12px;
  background: linear-gradient(135deg, #ffffff4d, #f7c9ec16 38%, #b9a6fa27 75%, #ffffff30);
  box-shadow: inset 1px 2px 2px #ffffffb3, inset -2px -3px 3px #76649680,
              0 5px 0 #796585, 0 7px 0 #30233d, 0 18px 26px #0005;
  transform: perspective(500px) rotateY(-12deg) rotateX(9deg) rotate(-5deg);
  transition: transform .3s, box-shadow .3s;
  backdrop-filter: blur(18px);
}
.interior .brand-gem::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid #ffffff30;
  border-radius: 9px;
  background: linear-gradient(145deg, #ffffff26, transparent 47%);
  z-index: -1;
}
.interior .brand-gem img {
  width: 100%; height: 100%; display: block;
  filter: drop-shadow(0 1px 0 #fff8) drop-shadow(0 2px 0 #83627c) drop-shadow(0 5px 3px #170d2b90);
}
.interior .site-brand:hover .brand-gem { transform: perspective(500px) rotateY(-4deg) rotateX(3deg) translateY(-3px); }
.interior .site-links .nav-account {
  border-color: #efd3e57d;
  background: linear-gradient(145deg, #d3a4c435, #75639b2b 65%, #ffffff0b);
  box-shadow: inset 0 1px #fff5, 0 3px 0 #483953, 0 10px 22px #0004;
  transition: transform .2s, box-shadow .2s;
}
.interior .site-links .nav-account:hover { transform: translateY(-2px); box-shadow: inset 0 1px #fff7, 0 5px 0 #483953, 0 15px 24px #0005; }

.interior .suwrap { max-width: 1240px; column-gap: clamp(32px, 5vw, 90px); }
.interior .ritual-aside { padding-top: clamp(30px, 6vw, 85px); }
.interior .ritual-aside h2 { font-size: clamp(49px, 5.7vw, 80px); letter-spacing: -.045em; }
.interior .ritual-aside h2 em { color: #e8bddf; text-shadow: 0 8px 34px #c58db84d; }
.interior .card2 {
  border: 1px solid #f0d0e34b;
  background: linear-gradient(145deg, #35283edc, #1b192bdc 68%, #171525e8);
  box-shadow: inset 0 1px #fff4, inset 1px 0 #ffffff0b, 0 32px 85px #0008, 0 0 65px #bb82ac0a;
  backdrop-filter: blur(28px);
}
.interior .sty {
  border-color: #e6c6dd38;
  background: linear-gradient(145deg, #ffffff13, #ad86b310 60%, #00000016);
  box-shadow: inset 0 1px #fff3, 0 4px 0 #281f34, 0 10px 19px #0003;
}
.interior .sty:hover { transform: translateY(-3px); box-shadow: inset 0 1px #fff5, 0 7px 0 #281f34, 0 20px 28px #0004; }
.interior .sty.on { box-shadow: inset 0 1px #fff5, 0 4px 0 #5c3d68, 0 14px 28px #0004; }
.interior .fi { border-color: #e9c6dd61; background: linear-gradient(145deg, #0e0e1bca, #262038b0); box-shadow: inset 0 2px 8px #0005, 0 1px #ffffff0b; }
.interior .fi:focus { border-color: #f3d8ee; box-shadow: 0 0 0 4px #d6a3ce24, inset 0 2px 8px #0004; }

.interior .cta, .interior .button, .interior .actions button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 62px;
  color: #fff6f2;
  font-family: var(--sans);
  font-weight: 700;
  letter-spacing: -.02em;
  border: 1px solid #ffe9f0b8;
  border-radius: 18px;
  background: linear-gradient(125deg, #d1a1b7 0%, #9d719f 44%, #615183 100%);
  box-shadow: inset 0 2px 2px #fff8, inset 0 -3px 3px #49295070,
              0 5px 0 #49344e, 0 17px 34px #09061372, 0 0 28px #c28cac21;
  text-shadow: 0 1px 1px #34203e88;
  transition: transform .2s, box-shadow .2s, filter .2s;
}
.interior .cta::after, .interior .button::after, .interior .actions button::after {
  content: "↗";
  display: grid;
  place-items: center;
  flex: 0 0 33px;
  width: 33px;
  height: 33px;
  border: 1px solid #ffffff82;
  border-radius: 11px;
  background: linear-gradient(135deg, #ffffff55, #ffffff0b);
  box-shadow: inset 0 1px #fff7, 0 3px 8px #39274766;
  font-size: 18px;
  font-weight: 400;
}
.interior .cta:not(:disabled):hover, .interior .button:hover, .interior .actions button:hover {
  transform: translateY(-3px);
  filter: brightness(1.07);
  box-shadow: inset 0 2px 2px #fff9, 0 8px 0 #49344e, 0 24px 40px #09061380, 0 0 35px #c28cac38;
}
.interior .cta:not(:disabled):active, .interior .button:active, .interior .actions button:active { transform: translateY(3px); box-shadow: inset 0 1px #fff8, 0 2px 0 #49344e, 0 8px 20px #09061366; }
.interior .cta:disabled::after { opacity: .45; }
.interior .back, .interior .link, .interior .code-actions button {
  color: #f3d7e9;
  border-radius: 11px;
  transition: transform .2s, background .2s, color .2s;
}
.interior .back:hover, .interior .link:hover, .interior .code-actions button:hover { color: #fff7f1; transform: translateY(-2px); background: #e6b5d013; }
.interior .footnote { max-width: none; }
.interior .footer-brand { display: inline-flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.interior .footer-brand .brand-gem { transform: scale(.82) perspective(500px) rotateY(-12deg) rotateX(9deg) rotate(-5deg); transform-origin: left center; }

.phone-field { display: flex; align-items: stretch; border: 1px solid #e9c6dd61; border-radius: 12px; overflow: hidden; background: #100e1b99; }
.phone-field:focus-within { border-color: #f3d8ee; box-shadow: 0 0 0 4px #d6a3ce24; }
.phone-prefix { display: flex; align-items: center; white-space: nowrap; gap: 4px; padding: 0 17px; border-right: 1px solid #e9c6dd46; color: #fff2e9; font-weight: 700; font-variant-numeric: tabular-nums; }
.interior .phone-field .fi { border: 0; border-radius: 0; box-shadow: none; background: transparent; min-width: 0; }
.interior .phone-field .fi:focus { outline: none; border: 0; box-shadow: none; }

@keyframes sculpture-breathe { from { transform: translate3d(0, -10px, 0) scale(1); } to { transform: translate3d(-16px, 12px, 0) scale(1.035); } }
@media (max-width: 850px) {
  body.interior::before { width: 105vw; left: 4vw; opacity: .13; }
  .interior .suwrap { column-gap: 32px; }
}
@media (max-width: 650px) {
  body.interior::before { width: 145vw; left: -19vw; top: 20svh; height: 85svh; opacity: .12; }
  .interior .site-nav { align-items: center; }
  .interior .brand-gem { width: 32px; height: 33px; padding: 7px; }
  .interior .ritual-aside { padding-top: 0; }
  .interior .ritual-aside h2 { font-size: clamp(43px, 10vw, 60px); }
  .interior .card2 { padding: 27px 21px; }
  .interior .cta, .interior .button { min-height: 58px; }
}
@media (prefers-reduced-motion: reduce) { body.interior::before { animation: none; } }

/* Sculpted category tiles: decorative engravings preserve native toggle semantics. */
.interior .sty[data-style]{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;min-height:184px;padding:124px 12px 18px;gap:5px;overflow:hidden;border:1px solid #d9bfce57;border-radius:20px;background:radial-gradient(ellipse at 50% 35%,#a47eaa23,transparent 65%),linear-gradient(145deg,#55435a,#322a40 46%,#221d30);box-shadow:inset 0 1px 1px #fff6,inset 0 -2px 3px #100a1d99,inset 1px 0 #efd5e422,0 5px 0 #211829,0 12px 22px #09051066;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;font-size:16px;font-weight:600;letter-spacing:.02em;color:#f1e3e7}
.interior .sty[data-style]::before{content:'';position:absolute;width:110px;height:110px;top:13px;left:calc(50% - 55px);background:var(--engraving) center/contain no-repeat;opacity:.8;transition:opacity .25s,transform .35s;pointer-events:none}
.interior .sty[data-style] i{display:none}
.interior .sty[data-style] .txt{width:100%}
.interior .sty[data-style] .txt b{color:#f1e3e7;font-size:16px}
.interior .sty[data-style] .txt span{margin-top:5px;font-size:11px;color:#c0adca;line-height:1.4}
.interior .sty[data-style]:hover{transform:translateY(-3px);border-color:#edcde6a6;box-shadow:inset 0 1px #fff8,inset 0 -2px 3px #100a1d99,0 8px 0 #211829,0 20px 30px #09051080}
.interior .sty[data-style]:hover::before{opacity:1;transform:translateY(-2px)}
.interior .sty[data-style].on{border-color:#e7bad4c4;background:radial-gradient(ellipse at 50% 35%,#e2b7d33b,transparent 65%),linear-gradient(145deg,#705369,#45334f 50%,#302539);box-shadow:inset 0 1px 1px #ffe6edaa,inset 0 -2px 3px #1e122a,0 5px 0 #664666,0 15px 28px #08051066,0 0 22px #cb8ac016}
.interior .sty[data-style].on::before{opacity:1}
.interior .sty[data-style].on::after{content:'\2713';-webkit-mask:none;mask:none;top:12px;right:12px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#ffe9f4;background:#e0afce20;box-shadow:inset 0 1px #ffe9f466;font-size:14px}
.interior .sty[data-style]:active{transform:translateY(2px);box-shadow:inset 0 2px 8px #0005,0 2px 0 #36233f}
.interior .sty[data-style]:focus-visible{outline:2px solid #ffe1b9;outline-offset:5px}
@media(max-width:650px){.interior .sty[data-style]{min-height:164px;padding-top:108px;padding-bottom:15px}.interior .sty[data-style]::before{width:94px;height:94px;left:calc(50% - 47px);top:11px}}
@media(prefers-reduced-motion:reduce){.interior .sty[data-style],.interior .sty[data-style]::before{transition:none}.interior .sty[data-style]:hover,.interior .sty[data-style]:hover::before{transform:none}}
.interior .sty[data-style="Stoic"]{--engraving:url("/assets/img/engravings/stoic.svg")}
.interior .sty[data-style="Ancient"]{--engraving:url("/assets/img/engravings/ancient.svg")}
.interior .sty[data-style="Historic"]{--engraving:url("/assets/img/engravings/historic.svg")}
.interior .sty[data-style="Literary"]{--engraving:url("/assets/img/engravings/literary.svg")}
.interior .sty[data-style="Scientific"]{--engraving:url("/assets/img/engravings/scientific.svg")}
.interior .sty[data-style="Wit"]{--engraving:url("/assets/img/engravings/wit.svg")}
.interior .sty[data-style="Resilience"]{--engraving:url("/assets/img/engravings/resilience.svg")}
.interior .sty[data-style="Uplifting"]{--engraving:url("/assets/img/engravings/uplifting.svg")}

/* The lettering itself is carved, not only the emblem. */
.interior .sty[data-style],.interior .sty[data-style] .txt b{font-family:'Crimson Text',Georgia,serif;font-size:25px;font-weight:600;letter-spacing:.035em;color:#ceb3c9;text-shadow:0 -1px 1px #100819,0 1px 0 #ffece080,0 3px 6px #110b1d}
.interior .sty[data-style].on,.interior .sty[data-style].on .txt b{color:#f1cfdc;text-shadow:0 -1px 1px #27152b,0 1px 0 #fff2dfaa,0 3px 7px #1d0d26}
.interior .sty[data-style] .txt span{font-family:'Gabarito',sans-serif;text-shadow:none;letter-spacing:0;font-weight:400}
@media(max-width:650px){.interior .sty[data-style],.interior .sty[data-style] .txt b{font-size:23px}}

/* Shared luminous edition: the same materials and typography as the homepage. */
body.interior{--bone:#f8eadd;--bone-dim:#d6c7d8;background:radial-gradient(ellipse at 8% 0%,#96576b24,transparent 48rem),radial-gradient(ellipse at 95% 70%,#80629225,transparent 50rem),#100e1b}
.interior .site-nav{max-width:1320px;margin:0 auto;padding:30px 32px;background:transparent;border-color:#e5c3d22a}
.interior .site-brand{font:600 clamp(27px,3vw,39px)/1 'Crimson Text',Georgia,serif;letter-spacing:-1px;color:#edcfdc;gap:16px;text-shadow:0 1px #ffeae530,0 3px 9px #100919}
.interior .site-brand em{font-weight:400;color:#fff0dc}
.interior .site-brand small{display:block;margin-top:10px;font:9px/1.2 var(--sans);letter-spacing:.24em;color:#bba2bd;text-shadow:none}
.interior .brand-gem{width:48px;height:54px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;transform:rotate(-7deg)}
.interior .brand-gem:before{display:none}
.interior .brand-gem img{filter:drop-shadow(0 8px 9px #100b1980);object-fit:contain}
.interior .site-links{font-size:12px;letter-spacing:.025em}
.interior main:not(.suwrap){box-sizing:border-box;width:calc(100% - 64px);max-width:1080px;margin:64px auto;padding:clamp(28px,5vw,72px);border:1px solid #e2c3e224;border-radius:44px;background:radial-gradient(ellipse at 0% 0%,#d398b714,transparent 60%),radial-gradient(ellipse at 100% 100%,#8f81c512,transparent 60%),linear-gradient(135deg,#191523dd,#15121fdd);box-shadow:inset 0 1px #ffffff10,0 30px 95px #07041040}
.interior main.page--doc{max-width:960px}
.interior main:not(.suwrap)>article{max-width:850px;margin:auto}
.interior main:not(.suwrap) p,.interior .doc ul{max-width:760px}
.interior h1,.interior .doc h1{color:#f8eadd;font-weight:400;line-height:1.05;letter-spacing:-.035em}
.interior h2,.interior .doc h2{color:#ead6e1;font-size:34px}
.interior .doc h2{padding-top:28px;border-top:1px solid #e5c3d21c;margin-top:38px}
.interior .intro{color:#cfbdd2;line-height:1.8}
.interior .cards{gap:22px}
.interior .card,.interior .callout,.interior dl,.interior .closing,.interior .card2{border:1px solid #e6cce32b;border-radius:32px;background:radial-gradient(ellipse at 10% 0%,#c497c222,transparent 70%),linear-gradient(145deg,#ffffff0a,#ffffff03);box-shadow:inset 0 1px #fff1,0 18px 55px #05030b35}
.interior .card{padding:32px;transition:transform .35s,border-color .35s,box-shadow .35s}
.interior .card:hover{transform:translateY(-4px);border-color:#d7afd65c;box-shadow:inset 0 1px #fff2,0 22px 65px #b485c21c}
.interior .card h2{font-size:34px;line-height:1.15;color:#f4e4e4}
.interior .card>span{font-size:10px;letter-spacing:.18em;color:#d7b2ca}
.interior .closing{padding:38px;margin-top:48px}
.interior .closing h2{margin-top:0}
.interior dl{padding:30px;gap:12px 24px}
.interior .callout{border-left-width:1px;padding:30px}
.interior .card2{background:radial-gradient(ellipse at 5% 0%,#bf8ba326,transparent 60%),linear-gradient(145deg,#211b2ce8,#171423ed);border-radius:34px}
.interior .sty[data-style]{border-radius:25px;background:radial-gradient(ellipse at 50% 35%,#a47eaa20,transparent 65%),linear-gradient(145deg,#4b3b5022,#272132);box-shadow:inset 0 1px #ffe8f233,0 4px 0 #211829,0 12px 30px #05030b33}
.interior .site-footer{max-width:1240px;border-color:#e5c3d21c;padding:35px 32px 50px}
.interior .footer-brand{font-family:'Crimson Text',Georgia,serif;font-size:25px}
.interior .footer-brand .brand-gem{width:37px;height:42px}
.interior .actions{gap:22px;flex-wrap:wrap}
.interior .actions button{padding:14px 22px}
@media(max-width:650px){.interior .site-nav{padding:23px 20px;gap:23px}.interior .site-brand{font-size:30px}.interior .site-brand small{font-size:7px;letter-spacing:.21em}.interior .brand-gem{width:39px;height:45px}.interior main:not(.suwrap){width:calc(100% - 28px);margin:30px auto;padding:30px 23px;border-radius:30px}.interior h1,.interior .doc h1{font-size:clamp(37px,10vw,48px);overflow-wrap:break-word}.interior h2,.interior .doc h2{font-size:29px}.interior .card,.interior .closing,.interior .callout,.interior dl{padding:24px;border-radius:25px}.interior .card h2{font-size:29px}.interior .closing{margin-top:30px}.interior .card2{border-radius:30px}.interior .site-footer{padding:30px 23px}.interior .intro{font-size:18px}.interior .site-links{font-size:12px}}
@media(prefers-reduced-motion:reduce){.interior .card:hover{transform:none}}
