@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#eae3d5;--gold:#cfac72;--forest:#10241f;--deep:#07120f;--muted:#b6b6a9;--plum:#302035}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--deep);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}header{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:18px 7vw;border-bottom:1px solid #bea47330;background:#081510}header .brand{font-family:'Cormorant Garamond',serif;font-size:29px;letter-spacing:.14em;font-weight:600}header .brand em{font-style:normal;color:var(--gold)}nav{display:flex;gap:27px;align-items:center}nav a{font-size:12px;text-transform:uppercase;letter-spacing:.16em}nav a:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:10px 19px}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.28em;font-size:11px;font-weight:700}.hero{min-height:690px;display:grid;grid-template-columns:1fr 46%;background:radial-gradient(ellipse at 35% 40%,#224638 0%,#112720 45%,#08140f 90%)}.hero .words{align-self:center;padding:85px 7vw 85px 12vw}.hero .image{position:relative;overflow:hidden}.hero .image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#112720 0%,transparent 24%),linear-gradient(0deg,#07120f 0%,transparent 28%)}.hero img{height:100%;width:100%;object-fit:cover;object-position:50% 30%}.star{font-size:28px;color:var(--gold);margin-bottom:13px}h1,h2,h3{font-family:'Cormorant Garamond',serif;line-height:1.04;font-weight:500;margin:14px 0 20px}h1{font-size:clamp(62px,7.5vw,112px);letter-spacing:-.035em}h2{font-size:clamp(44px,5vw,70px)}h3{font-size:33px}h1 em,h2 em{font-style:italic;color:var(--gold)}p{color:#d3d3c7}.lead{font-size:17px;max-width:470px}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{border:1px solid var(--gold);background:var(--gold);color:#14251e;padding:15px 24px;display:inline-block;text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:700;cursor:pointer;transition:.2s}.btn:hover{background:#ead1a2;transform:translateY(-2px)}.btn.secondary{background:transparent;color:var(--gold)}.btn.secondary:hover{background:#cfac7219}.section{padding:90px 8vw}.center{text-align:center}.center p{margin-left:auto;margin-right:auto;max-width:620px}.ornament{color:var(--gold);font-size:20px;letter-spacing:16px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:43px}.service{background:#11241f;border:1px solid #bfa67532;padding:34px;min-height:270px;display:flex;flex-direction:column;align-items:flex-start}.service .num{color:var(--gold);font-size:13px;letter-spacing:.18em}.service p{font-size:14px;flex:1}.service a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:5px}.split{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.split .photo{min-height:480px}.split img{width:100%;height:100%;object-fit:cover}.split .content{background:var(--plum);padding:80px 9vw 70px 7vw;display:flex;flex-direction:column;justify-content:center}.split .content p{max-width:490px}.rule{height:1px;background:#bfa67540;margin:25px 0}.smallprint{font-size:12px;color:var(--muted)}footer{border-top:1px solid #bfa67540;padding:40px 8vw;text-align:center}footer .brand{font-family:'Cormorant Garamond',serif;font-size:35px;letter-spacing:.2em}footer p{font-size:12px}.subhero{padding:85px 8vw 70px;text-align:center;background:radial-gradient(ellipse at center,#21362b,#081510 78%)}.subhero h1{font-size:clamp(50px,7vw,86px)}.form-layout{display:grid;grid-template-columns:42% 1fr;gap:60px;align-items:start;max-width:1200px;margin:auto}.form-layout img{width:100%;max-height:680px;object-fit:cover}.form-card{padding:34px;border:1px solid #d1b77a55;background:#10221d}.form-card h3{margin-top:0}.field{margin:0 0 20px}.field label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;display:block;margin-bottom:7px;color:#e9d8b7}.field input,.field select,.field textarea{font:inherit;width:100%;border:1px solid #c5ae7e60;border-radius:0;padding:13px;background:#071611;color:white}.field textarea{min-height:115px}.field small{color:#f0a5a5}.status{margin-top:14px;font-size:14px}.status.error{color:#f8bdbd}.status.success{color:#c5deb6}.catnote{display:inline-block;font-size:13px;color:var(--gold);border-top:1px solid #cbaa7644;padding-top:13px}.mobile-toggle{display:none}@media(max-width:780px){header{padding:15px 5vw;flex-wrap:wrap}header .brand{font-size:25px}nav{gap:10px}nav a{font-size:10px;letter-spacing:.05em}.nav-cta{padding:7px 9px}.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero .image{height:370px}.hero .image:after{background:linear-gradient(0deg,#112720,transparent 50%)}.hero .words{padding:32px 8vw 70px}.hero h1{font-size:69px}.section{padding:65px 6vw}.cards{grid-template-columns:1fr}.service{min-height:230px}.split{grid-template-columns:1fr}.split .photo{min-height:400px;max-height:480px}.split .content{padding:55px 7vw}.form-layout{grid-template-columns:1fr;gap:22px}.form-layout img{max-height:350px}.form-card{padding:24px}.subhero{padding:70px 6vw 55px}}

/* Swag Tarot: violet fairy-glow refresh */
:root{--ink:#f9edff;--gold:#f0c77e;--forest:#30164a;--deep:#13091f;--muted:#c9b8d8;--plum:#41185c}
body{background:#13091f;color:var(--ink);background-image:radial-gradient(circle at 15% 10%,#6d2a8c44 0%,transparent 32%),radial-gradient(circle at 85% 80%,#9e5ad222 0%,transparent 28%)}
header{background:#170b27ed;border-bottom:1px solid #f0c77e4d;backdrop-filter:blur(12px)}
header .brand{color:#f9e7ff;text-shadow:0 0 18px #b76aff48}
.hero{background:radial-gradient(ellipse at 28% 40%,#5e2b76 0%,#2b123f 51%,#160a27 92%)}
.hero .image:after{background:linear-gradient(90deg,#2b123f 0%,transparent 25%),linear-gradient(0deg,#170a2b 0%,transparent 25%)}
.hero .image img{object-position:50% 46%}
.hero .words{position:relative}
.hero .words:after{content:"✧    ✦    ✶      ☾";position:absolute;right:4%;top:8%;font-size:24px;letter-spacing:15px;color:#c998ff99;animation:twinkle 4s ease-in-out infinite}
.star{color:#d9a9ff;text-shadow:0 0 15px #bb82f9}
h1 em,h2 em{color:#eab7ff;text-shadow:0 0 25px #a65bdc55}
.eyebrow,.ornament{color:#edc4ff}
p{color:#e7d9ed}
.btn{background:#ebc5ff;color:#241035;border-color:#ebc5ff;border-radius:100px;box-shadow:0 0 20px #bf86e733}
.btn:hover{background:#f4dfff;box-shadow:0 0 26px #e7a9ff70}
.btn.secondary{color:#f0c77e;border-color:#f0c77e}
.service{background:linear-gradient(145deg,#3b2057,#261033);border:1px solid #c68de055;border-radius:20px;box-shadow:0 15px 40px #09031645}
.service .num{color:#d5a5ff}
.service:hover{border-color:#eebafa;transform:translateY(-4px);transition:.25s}
.split .content{background:radial-gradient(ellipse at 80% 20%,#653377,#301440)}
.split .photo{background:#291239}
.split .photo img{object-position:center}
.subhero{background:radial-gradient(ellipse at center,#633080,#2c133e 60%,#16091f 95%)}
.form-card{background:#2d1741;border:1px solid #d59cf370;border-radius:22px;box-shadow:0 15px 35px #09031655}
.field input,.field select,.field textarea{background:#170b25;border-color:#9e78bc;color:#fff;border-radius:9px}
.field label{color:#f5dbff}
.catnote{color:#e3bcff}
footer{background:#170b25;border-top:1px solid #e1b1ff4f}
.persephone-banner{padding:65px 9vw;display:grid;grid-template-columns:auto 1fr minmax(170px,320px);align-items:center;gap:34px;background:linear-gradient(110deg,#3b155c,#613078 60%,#34104b);border-top:1px solid #f0c77e44;border-bottom:1px solid #f0c77e44}
.persephone-banner h2{font-size:clamp(36px,4vw,58px)}
.persephone-banner p{max-width:550px}
.persephone-banner img{width:100%;max-height:270px;object-fit:cover;border-radius:26px;border:2px solid #cf92e5;box-shadow:0 0 40px #c087ec66}
.cat-glow{font-size:53px;filter:drop-shadow(0 0 15px #df98ff)}
.social-section{background:radial-gradient(ellipse at center,#492262,#1b0b2b 80%)}
.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin:30px 0}
.social-links a{display:inline-block;padding:13px 22px;border:1px solid #dda8ff;border-radius:30px;color:#ffe2ff;background:#c78de51c}
.social-links a:hover{background:#bc78eb44}
.social-avatar{height:120px;width:120px;border-radius:50%;object-fit:cover;box-shadow:0 0 34px #bb80ee66}
@keyframes twinkle{0%,100%{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}}
@media(max-width:780px){.persephone-banner{grid-template-columns:1fr;padding:48px 7vw;text-align:center;gap:14px}.persephone-banner img{max-width:350px;margin:auto}.hero .words:after{font-size:15px;top:3%}.social-links{flex-direction:column}.social-links a{width:100%}}
