:root{--palm:url("data:image/png;base64,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");--bg:#FFFFFF;--alt:#F6F4F1;--ink:#1A1A1A;--muted:#6B6762;--line:#DDD8D0;--gold:#9C7A3F;--dark:#121212;--dark-ink:#F4F0E8;--gold-lt:#C9A86A;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0E0E0E;--alt:#161616;--ink:#EFEBE3;--muted:#A39D93;--line:#2C2A27;--gold:#C9A86A;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0E0E0E;--alt:#161616;--ink:#EFEBE3;--muted:#A39D93;--line:#2C2A27;--gold:#C9A86A;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--ink);font:300 1.0625rem/1.75 Roboto,system-ui,sans-serif}
h1,h2,h3{font-family:Italiana,Georgia,serif;font-weight:400;margin:0;line-height:1.08}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.wrap{max-width:1040px;margin:0 auto;padding:0 28px}
.btn{display:inline-block;padding:16px 38px;border:1px solid var(--gold-lt);color:var(--dark-ink);text-decoration:none;font:400 .95rem Italiana,serif;letter-spacing:.22em;text-transform:uppercase;background:transparent;cursor:pointer;transition:background .25s,color .25s}
.btn:hover{background:var(--gold-lt);color:#121212}
.btn.dark{color:var(--ink);border-color:var(--gold)}
.btn.dark:hover{background:var(--gold);color:var(--bg)}
/* hero */
.hero{position:relative;height:100vh;height:100svh;min-height:520px;background:#120A06;color:var(--dark-ink);overflow:hidden;display:flex;flex-direction:column}
.bars{position:absolute;inset:0;display:flex;align-items:flex-end;gap:0}
.bars i{flex:1;border-radius:999px 999px 0 0;transform-origin:bottom;animation:rise 2.2s cubic-bezier(.2,.8,.2,1) backwards,sway 9s ease-in-out infinite alternate}
.bars i:nth-child(1){height:58%;background:#FBE3D3;animation-delay:.1s,2.3s}
.bars i:nth-child(2){height:78%;background:#F1C9A9;animation-delay:.2s,2.5s}
.bars i:nth-child(3){height:92%;background:#E3A97F;animation-delay:.3s,2.7s}
.bars i:nth-child(4){height:100%;background:#C98A5E;animation-delay:.4s,2.9s}
.bars i:nth-child(5){height:90%;background:#A66A42;animation-delay:.5s,2.4s}
.bars i:nth-child(6){height:74%;background:#7F4C2F;animation-delay:.6s,2.6s}
.bars i:nth-child(7){height:54%;background:#5C3522;animation-delay:.7s,2.8s}
.bars i:nth-child(8){height:40%;background:#3E2417;animation-delay:.8s,3s}
@keyframes rise{from{transform:scaleY(.08)}}
@keyframes sway{to{transform:scaleY(.94)}}
svg.bars{width:100%;height:100%}
.fr{transform-origin:200px 312px;animation:frs 6s ease-in-out infinite alternate}
@keyframes frs{from{transform:rotate(-2.4deg)}to{transform:rotate(2.6deg)}}
.hd{position:absolute;bottom:-1%;width:clamp(170px,27vw,430px);height:auto;pointer-events:none;overflow:visible}
.hd.l{left:2.5vw;color:#2A221C}
.hd.r{right:2.5vw;color:#17120E;transform:scaleX(-1)}

.palm{transform-box:fill-box;transform-origin:50% 100%;animation:psway 7s ease-in-out infinite alternate}
@keyframes psway{from{transform:rotate(-1.2deg)}to{transform:rotate(1.4deg)}}
@media (min-width:900px){}
.hero-top{position:relative;z-index:2;display:flex;justify-content:flex-end;min-height:96px;align-items:center;padding:28px 36px;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase}
.hero-top a{text-decoration:none}
.hdr{position:fixed;top:0;left:0;right:0;z-index:45;height:calc(96px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 36px 0;background:#141414;transition:background .3s;--hc:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
.hdr nav,.hdr .r{display:flex;align-items:center;gap:44px}
.hdr .r{justify-content:flex-end}
.hdr a,.menu{color:var(--hc);transition:color .25s;text-decoration:none;font:400 .9rem Roboto,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.hdr a:hover,.menu:hover{color:var(--gold-lt)}
a.logo{display:block;line-height:0}
a.logo img{display:block;height:58px;width:auto}
.menu{background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:18px;padding:8px 0}
.menu i{display:block;width:34px;height:2px;background:var(--hc);box-shadow:0 -8px 0 var(--hc),0 8px 0 var(--hc)}
body.sc .hdr{background:transparent}
body.sc.lt .hdr{--hc:var(--ink)}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:55;opacity:0;visibility:hidden;transition:opacity .3s}
.tabs{position:fixed;top:0;right:0;bottom:0;width:min(380px,86vw);background:#141414;z-index:60;display:flex;flex-direction:column;justify-content:center;padding:40px 44px;transform:translateX(100%);visibility:hidden;transition:transform .35s,visibility .35s}
.tabs a{font:400 2.4rem/1.2 Italiana,serif;color:#F4F0E8;text-decoration:none;padding:12px 0;border-bottom:1px solid #2C2A27}
.tabs a:hover,.tabs a.on{color:var(--gold-lt)}
.dx{position:absolute;top:24px;right:28px;background:none;border:0;color:#F4F0E8;font:300 2.6rem/1 Roboto,sans-serif;cursor:pointer}
.menu-open .tabs{transform:none;visibility:visible}
.menu-open .scrim{opacity:1;visibility:visible}
@media (max-width:900px){.hdr{height:calc(76px + env(safe-area-inset-top,0px));padding-left:20px;padding-right:20px}.hdr nav{visibility:hidden}.hdr .r a,.menu span{display:none}a.logo img{height:42px}}
.hero-mid{text-shadow:0 2px 24px rgba(20,8,30,.5);position:relative;z-index:2;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px}
.hero-mid small{font:400 1.4rem Italiana,serif;color:var(--gold-lt);margin-bottom:14px}
.hero-mid small .mp{display:inline-block;width:.98em;height:1.4em;vertical-align:-.32em;margin:0 .55em;background:currentColor;-webkit-mask:var(--palm) center/contain no-repeat;mask:var(--palm) center/contain no-repeat}
.hero h1{font-size:clamp(2.8rem,8vw,6.4rem);font-weight:400;letter-spacing:.02em}
.hero-mid p{margin:20px 0 38px;font-size:1.05rem;letter-spacing:.12em}
.hero-mid .btn{position:relative;top:46px}
@media (max-width:900px){.hero-mid .btn{top:36px}}
.spec-hero{margin:26px 0 40px;display:flex;flex-direction:column;align-items:center;gap:12px}
.spec-hero::before{content:"";width:56px;height:1px;background:var(--gold-lt);margin-bottom:10px}
.spec-hero .s1{font:400 clamp(.9rem,4.5vw,2.05rem)/1.2 Italiana,serif;letter-spacing:.06em;white-space:nowrap}
.spec-hero .s2,.spec-hero .s3{font-size:.8rem;letter-spacing:.2em;white-space:nowrap;text-transform:uppercase;color:#E6CC96;text-shadow:0 1px 10px rgba(10,6,3,.95),0 0 3px rgba(10,6,3,.7)}
.spec-hero .s3{margin-top:-5px}
.hero .hero-mid,.hero .hero-mid *{text-shadow:none!important}
.amp{font-family:Optima,"Optima nova","URW Classico",Marcellus,Candara,"Segoe UI",serif;font-style:normal;font-weight:400;font-size:.7em;line-height:1;vertical-align:.15em;padding:0 .16em;letter-spacing:0;color:rgba(244,240,232,.84)}
@media (max-width:600px){.spec-hero .s1{white-space:normal;text-wrap:balance;text-align:center;max-width:90vw;font-size:clamp(1.15rem,5.8vw,1.55rem);line-height:1.25}}
.scroll{position:absolute;z-index:2;bottom:26px;left:50%;transform:translateX(-50%);font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-lt);text-decoration:none}
/* sections */
section{padding:120px 0}
section.alt{background:var(--alt)}
.panel{display:none;position:fixed;inset:0;z-index:30;overflow:auto;background:var(--bg)}
.panel:target{display:block}
.panel .close{position:absolute;top:calc(116px + env(safe-area-inset-top,0px));right:36px;padding:12px 26px;margin:0}
html:has(.panel:target){overflow:hidden}
.rule{width:56px;height:1px;background:var(--gold);margin:22px 0 0}
h2{font-size:clamp(2.2rem,5vw,3.4rem)}
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.portrait{aspect-ratio:4/5;display:flex;align-items:flex-end;gap:6px;padding:0 0 0;border-bottom:1px solid var(--gold)}
.portrait i{flex:1;border-radius:999px 999px 0 0}
.about p{color:var(--muted);margin:22px 0}
.about p.spec-line{font:400 1.6rem/1.3 Italiana,serif;color:var(--gold);margin:0}
.hl{margin:30px 0 36px;padding:0;list-style:none}
.hl li{padding:14px 0;border-top:1px solid var(--line)}
.hl li:last-child{border-bottom:1px solid var(--line)}
.hl b{font:400 1.35rem Italiana,serif;display:block}
.hl span{color:var(--muted);font-size:.98rem}
.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:56px}
.client{border-top:1px solid var(--gold);padding-top:20px}
.client h3{font-size:1.7rem}
.client em{display:block;font:400 1.1rem Italiana,serif;color:var(--gold);margin:4px 0 8px}
.client p{margin:0;color:var(--muted)}
.row{display:grid;grid-template-columns:48px 1.1fr 1.4fr 1fr;gap:24px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}
.roster{margin-top:50px;border-top:1px solid var(--line)}
.dot{width:32px;height:32px;border-radius:50%}
.row h3{font-size:1.8rem}
.row span{color:var(--muted)}
.row em{font:400 1.15rem Italiana,serif;color:var(--gold)}
.spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2px;margin-top:50px}
.spec div{background:var(--dark);color:var(--dark-ink);padding:44px 28px;min-height:230px;display:flex;flex-direction:column;justify-content:flex-end;border-bottom:3px solid var(--c)}
.spec h3{font-size:1.7rem;margin-bottom:8px}
.spec p{margin:0;font-size:.95rem;color:#CFC8BB}
section.exp{position:relative;z-index:2;padding:96px 0 90px;background:#fff;color:#1A1A1A}
.exp-h{text-align:center;margin-bottom:60px;padding:0 28px}
.exp-h .rule{margin:22px auto 0}
.exp-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:34px 10px;padding:6px 18px 10px;max-width:1180px;margin:0 auto}
.exp .item{flex:0 0 calc(50% - 6px);text-align:center}
.exp .ic{width:68px;height:68px;border-radius:50%;background:#9C7D67;display:flex;align-items:center;justify-content:center;margin:0 auto 22px;box-shadow:0 12px 26px rgba(0,0,0,.2)}
.exp .ic svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.exp h3{font:400 .88rem/1.35 Italiana,serif;letter-spacing:.08em;text-transform:uppercase;margin:0}
@media (min-width:700px){.exp-grid{gap:40px 18px;padding:6px 28px 10px}.exp .item{flex:0 0 calc(20% - 15px)}.exp .ic{width:76px;height:76px}.exp .ic svg{width:32px;height:32px}.exp h3{font-size:.98rem;letter-spacing:.1em}}
@media (min-width:1180px){.exp-grid{flex-wrap:nowrap;gap:8px;padding:6px 16px 10px}.exp .item{flex:1 1 0;min-width:0}.exp h3{font-size:.86rem;letter-spacing:.06em}}
section.past{background:#000;padding:72px 0;overflow:hidden}
.past-h{text-align:center;font:400 .8rem Roboto,sans-serif;letter-spacing:.3em;text-transform:uppercase;color:#8F897E;margin-bottom:38px}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.track{display:flex;width:max-content;animation:marq 138s linear infinite}
.grp{display:flex}
.tile{flex:none;width:150px;height:150px;margin:0 30px;padding:26px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.tile.w2{padding:30px 18px}
.tile.w3{padding:44px 12px}
.tile .lg{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tile.t{padding:12px;text-align:center;font:400 1.02rem/1.3 Italiana,serif;letter-spacing:.1em;text-transform:uppercase;color:#fff}
@media (max-width:700px){.tile{width:112px;height:112px;margin:0 16px;padding:20px}.tile.w2{padding:24px 12px}.tile.w3{padding:34px 8px}.tile.t{padding:8px;font-size:.8rem}}
.tile.sm{padding:38px}
@media (max-width:700px){.tile.sm{padding:29px}}
@keyframes marq{to{transform:translateX(-50%)}}
/* the client-logo row keeps its slow scroll even when a phone has "Reduce Motion" on (it is a gentle, decorative movement) */
.legal{max-width:780px;margin-top:30px;color:var(--muted)}
.legal h3{font:400 1.45rem/1.3 Italiana,serif;color:var(--ink);margin:36px 0 10px}
.legal p,.legal li{line-height:1.8;margin:0 0 12px}
.legal ul{padding-left:22px;margin:0 0 14px}
.legal a{color:var(--gold);text-underline-offset:3px}
.legal b{font-weight:500;color:var(--ink)}
.legal .upd{font-size:.9rem;letter-spacing:.04em}
.req{color:var(--gold-lt)}
.apply .req{color:var(--gold)}
.ferr{min-height:1.3em;margin-top:16px;font-size:.9rem;color:#E8A98C}
.apply .ferr{color:#A8452A}
.connect input.bad{border-bottom-color:#E8A98C}
.apply input.bad{border-bottom-color:#A8452A}
fieldset.chk{border:0;margin:20px 0 0;padding:0;min-width:0}
.chk legend{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding:0;margin-bottom:12px}
.chk-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
.apply label.ck{display:flex;align-items:center;gap:10px;margin:0;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer}
.apply .ck input[type=checkbox]{width:18px;height:18px;flex:none;padding:0;border:0;margin:0;accent-color:#9C7D67;cursor:pointer}
#contact.panel,#apply.panel,#apply-nail.panel,#nail-artists.panel,#client-access.panel,#palm-press.panel,.panel.blog{--bg:#fff;--alt:#fff;--ink:#1A1A1A;--muted:#6B6762;--line:#DDD8D0;--gold:#9C7D67;background:#fff;color:#1A1A1A}
.apply textarea{min-height:90px;resize:vertical}
.gate{max-width:640px;margin-top:30px;color:var(--muted)}
.gate p{margin:0 0 14px;line-height:1.8}
.gate-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
[hidden]{display:none!important}
.apply input[type=file]{width:100%;padding:14px 0 10px;border:0;border-bottom:1px solid var(--line);background:transparent;font:300 1rem Roboto,sans-serif;color:var(--ink);cursor:pointer}
.apply input[type=file]::file-selector-button{font:400 .78rem Roboto,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid var(--gold);padding:10px 18px;margin-right:14px;cursor:pointer}
.apply input[type=file].bad{border-bottom-color:#A8452A}
.apply p.fnote{font-size:.85rem;line-height:1.6;margin:12px 0 0}
.flist{margin:10px 0 0;padding-left:20px;font-size:.88rem;color:var(--muted)}
.thanks{padding-top:6px}
.thanks h3{font:400 clamp(2rem,4vw,2.7rem)/1.15 Italiana,serif;color:var(--ink);margin:0 0 20px}
.thanks p{margin:0 0 14px;line-height:1.8}
.apply a.inl{color:var(--gold);text-underline-offset:3px}
.about-photo{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;margin-top:80px}
@media (max-width:900px){.about-photo{height:auto;aspect-ratio:4/5;max-height:440px;margin-top:0}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.hf{display:none}
@media (min-width:901px) and (max-width:1100px){.hdr nav{gap:22px}.hdr nav a{font-size:.78rem}}
@media (min-width:901px) and (max-width:1000px){.hdr nav{gap:16px}.hdr nav a{font-size:.74rem}}
.apply .wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.apply p{color:var(--muted)}
.apply label{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:18px 0 6px}
.apply input,.apply select,.apply textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:300 1.05rem Roboto,sans-serif;padding:8px 0;border-radius:0}
.apply .btn{margin-top:30px}
.apply p.fnote{font-size:.85rem;line-height:1.6;margin:12px 0 0}
.connect{background:var(--dark);color:var(--dark-ink)}
.connect .wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.connect p{color:#CFC8BB}
.connect label{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-lt);margin:18px 0 6px}
.connect input,.connect textarea,.connect select{width:100%;background:transparent;border:0;border-bottom:1px solid #4A463F;color:var(--dark-ink);font:300 1.05rem Roboto,sans-serif;padding:8px 0}
.connect select option{color:#111}
.connect textarea{min-height:90px;resize:vertical}
.connect .btn{margin-top:30px}
footer.foot{background:#F6F4F1;color:#1A1A1A;padding:72px 0 0;font-size:1rem}
.foot .fwrap{max-width:1240px;margin:0 auto;padding:0 40px}
.foot-logo{display:block;width:230px;max-width:40vw;height:auto}
.foot-cols{display:grid;grid-template-columns:1.15fr 1fr 1.2fr 100px 1.2fr;gap:34px;align-items:start}
.soc{display:flex;gap:22px;margin-top:30px}
.soc a{color:#9C7D67;display:inline-flex}
.soc a:hover{color:#1A1A1A}
.soc svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.foot h4{font:400 1.05rem Roboto,sans-serif;letter-spacing:.04em;margin:0 0 26px}
.foot-cols p{margin:0 0 6px;line-height:1.8;font-size:1.05rem}
.foot a.l{color:#9C7D67;text-decoration:none;border-bottom:1px solid rgba(156,125,103,.45)}
.foot-palm-wrap{display:flex;justify-content:center;align-items:flex-start;padding-top:2px}
.foot-palm{display:block;width:96px;height:137px;background:#9C7D67;-webkit-mask:var(--palm) center/contain no-repeat;mask:var(--palm) center/contain no-repeat;transform-origin:50% 100%;animation:psway 7s ease-in-out infinite alternate}
.foot a.go{display:inline-block;transition:transform .2s ease}
.foot a.go:hover{transform:translateX(5px)}
section.past,section.exp{scroll-margin-top:96px}
.foot a.l:hover{border-bottom-color:#9C7D67}
.foot-bar{margin-top:56px;border-top:1px solid #DDD8D0;padding:26px 40px 40px;text-align:center;font-size:.85rem;letter-spacing:.04em;color:#6B6762}
.foot-bar p{margin:0 0 6px}
.foot-bar a{color:inherit;text-decoration:none}
.foot-bar a:hover{color:#9C7D67}
@media (min-width:901px) and (max-width:1200px){.foot-cols{grid-template-columns:1fr 1fr 1fr}.foot-palm-wrap{display:none}}
@media (max-width:900px){.foot-palm-wrap{justify-content:flex-start}.foot-palm{width:70px;height:100px}.foot-cols{grid-template-columns:1fr;gap:40px}.foot .fwrap{padding:0 24px}.foot-bar{padding:24px}footer.foot{padding-top:56px}}
@media (max-width:900px){.panel .close{right:20px;top:calc(86px + env(safe-area-inset-top,0px));padding:10px 18px}.about,.connect .wrap,.apply .wrap{grid-template-columns:1fr;gap:40px}.portrait{aspect-ratio:16/9}.row{grid-template-columns:40px 1fr;gap:6px 16px}.row span,.row em{grid-column:2}section{padding:84px 0}}
@media (prefers-reduced-motion:reduce){.tabs,.scrim{transition:none}.bars i,.palm,.fr,.foot-palm{animation:none}html{scroll-behavior:auto}}
/* phones: the logos keep scrolling; only the soft edge-fade is switched off (some phone browsers fail to draw masked, moving content) */
@media (max-width:700px){
.marquee{-webkit-mask-image:none;mask-image:none}
.track{will-change:transform;animation-duration:100s}
}

/* ---- real pages (About, Clients, Nail Artists, Apply, Contact, Privacy, Terms) ----
   A page looks like the panel it replaces: same header, same content, same spacing. */
body.page .panel{display:block;position:relative;inset:auto;overflow:visible;z-index:auto;min-height:100vh}
body.page h1{font-size:clamp(2.2rem,5vw,3.4rem)}


/* ---- SEO pass: introduction text and sub-headings, in the site's existing fonts and colours ---- */
h2.sub{font:400 1.6rem/1.3 Italiana,serif;color:var(--gold);margin:40px 0 0}
.gate h2.sub{margin-top:46px}
.about a.inl,.gate a.inl{color:var(--gold);text-underline-offset:3px}
.legal h2{font:400 1.45rem/1.3 Italiana,serif;color:var(--ink);margin:36px 0 10px}
h2.sub .amp{color:inherit}
.about-photos{display:grid;gap:24px;margin-top:80px}
.about-photos .about-photo{margin-top:0}
.about-photo--natural{aspect-ratio:auto;object-fit:initial}
@media (max-width:900px){
.about-photos{display:contents}
.about-photos .about-photo:nth-child(1){order:0}
.about > div:not(.about-photos){order:1}
.about-photos .about-photo--natural{order:2;max-width:520px;max-height:none;margin-inline:auto}
}
h2.sub+p{margin-top:12px}
.gate .soc{margin-top:20px}
.gate p,.about p{text-wrap:pretty}
/* ---- Palm Press (blog) ---- */
.pp-lead{max-width:680px;color:var(--muted);line-height:1.85;margin:30px 0 0;font-size:1.08rem}
.pp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:44px 34px;margin:54px 0 20px}
.pp-card .pp-img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pp-feature{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr;gap:44px;align-items:center}
.pp-feature .pp-img img{aspect-ratio:auto;max-height:520px}
.pp-meta{font:400 .72rem Roboto,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:16px 0 10px}
.pp-feature .pp-meta{margin-top:0}
.pp-card h2{font:400 clamp(1.7rem,2.6vw,2.3rem)/1.2 Italiana,serif;margin:0 0 12px;color:var(--ink)}
.pp-card h2 a{color:inherit;text-decoration:none}
.pp-card p{color:var(--muted);line-height:1.8;margin:0 0 18px}
.pp-more{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px;font:400 .78rem Roboto,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.pp-follow{margin-top:30px}
.pp-art{max-width:760px}
.pp-art .pp-meta{margin:0 0 14px}
.pp-back{display:inline-block;margin:0 0 26px;color:var(--gold);text-decoration:none;font:400 .78rem Roboto,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.pp-bottom{margin:44px 0 10px}
.pp-hero{display:block;width:100%;height:auto;max-height:400px;object-fit:cover;object-position:50% 45%;margin:30px 0 30px}
.pp-art p{color:var(--muted);line-height:1.9;margin:0 0 20px;font-size:1.05rem}
.pp-art p strong{color:var(--ink);font-weight:500}
.pp-art a{color:var(--gold);text-underline-offset:3px}
.pp-art h2{font:400 clamp(1.8rem,3vw,2.3rem)/1.2 Italiana,serif;color:var(--ink);margin:56px 0 16px;scroll-margin-top:110px}
.pp-art h3{font:400 1.5rem/1.3 Italiana,serif;color:var(--gold);margin:42px 0 12px;scroll-margin-top:110px}
.pp-toc{margin:6px 0 10px;padding:20px 24px;border:1px solid var(--line);line-height:2;font-size:.95rem;color:var(--muted)}
.pp-toc b{display:block;font:400 .72rem Roboto,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.pp-toc a{text-decoration:none;white-space:nowrap}
@media (max-width:900px){.pp-feature{grid-template-columns:1fr;gap:22px}}
/* footer palm tree is a link to Palm Press */
.foot-palm-link{display:block;line-height:0;text-decoration:none;-webkit-tap-highlight-color:transparent}
.foot-palm-link:hover .foot-palm,.foot-palm-link:focus-visible .foot-palm{background:#B39679}
.foot-palm-link:focus-visible{outline:2px solid #9C7D67;outline-offset:6px}
