/*
Theme Name: Puro Handsome Model Theme
Theme URI: https://purohandsome.com/
Author: 210mike.com
Description: Mobile-first companion theme for the Puro Handsome Model subsite.
Version: 0.1.5
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: puro-handsome-model
*/

:root{
  --phm-ink:#151410;
  --phm-cream:#f4ead4;
  --phm-paper:#fffaf0;
  --phm-aqua:#79b9b6;
  --phm-yellow:#f2dc77;
  --phm-brown:#9a7f70;
  --phm-line:#d3c19f;
  --phm-max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--phm-cream);-webkit-text-size-adjust:100%;text-size-adjust:100%;max-width:100%;overflow-x:hidden}
body{margin:0;max-width:100%;overflow-x:hidden;background:var(--phm-cream);color:var(--phm-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{max-width:100%;height:auto}
button,input,textarea,select{font-family:inherit}
input,textarea,select{font-size:16px}
button{touch-action:manipulation}
.phm-shell{width:min(calc(100% - 28px),var(--phm-max));margin-inline:auto}

/* Public header */
.phm-site-header{position:sticky;top:0;z-index:50;background:rgba(244,234,212,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(21,20,16,.15)}
.phm-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.phm-brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.phm-brand img{width:56px;height:56px;border-radius:50%;object-fit:cover;background:#666}
.phm-brand-fallback{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--phm-ink);color:var(--phm-yellow);font-weight:950;letter-spacing:-.05em}
.phm-brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.05}
.phm-brand-copy strong{text-transform:uppercase;letter-spacing:.055em;font-size:.88rem;white-space:nowrap}
.phm-brand-copy small{text-transform:uppercase;letter-spacing:.14em;font-size:.61rem;opacity:.65;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.phm-main-nav{display:none;gap:22px;align-items:center}.phm-main-nav a{text-decoration:none;font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.phm-main-nav .phm-nav-button{border:1px solid var(--phm-ink);padding:9px 12px}
.phm-mobile-nav{display:flex;gap:6px;flex:0 0 auto}.phm-mobile-nav a{text-decoration:none;border:1px solid var(--phm-ink);padding:8px 9px;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.phm-mobile-nav a:first-child{background:var(--phm-ink);color:var(--phm-cream)}
.phm-site-main{min-height:70vh}

/* Private staff shell: intentionally simpler than the public site. */
.phm-private-staff-shell{background:var(--phm-cream)}
.phm-private-header{min-height:70px;display:flex;align-items:center;background:var(--phm-paper);border-bottom:2px solid var(--phm-ink)}
.phm-private-header-inner{min-height:70px;display:flex;align-items:center}
.phm-private-header .phm-brand{gap:10px}.phm-private-header .phm-brand img{width:48px;height:48px}.phm-private-header .phm-brand-fallback{width:46px;height:46px}.phm-private-header .phm-brand-copy strong{font-size:.84rem}.phm-private-header .phm-brand-copy small{font-size:.53rem;letter-spacing:.12em}
.phm-private-main{min-height:calc(100dvh - 70px);padding:0}

/* Public typography and layout */
.phm-kicker{margin:0 0 13px;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.17em}
.phm-hero{padding:70px 0 60px}.phm-hero h1,.phm-page-heading h1,.phm-final-cta h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.1rem,12vw,7.8rem);line-height:.87;letter-spacing:-.055em;margin:0;max-width:980px}.phm-hero h1 em{font-weight:400;color:#4d817f}.phm-lede{max-width:760px;font-size:clamp(1.06rem,2.5vw,1.35rem);margin:28px 0 0;line-height:1.6}
.phm-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.phm-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;text-decoration:none;border:1px solid var(--phm-ink);font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;cursor:pointer;touch-action:manipulation}.phm-button--primary{background:var(--phm-ink);color:#fff2cb}.phm-button--ghost{background:transparent;color:var(--phm-ink)}.phm-button--wide{width:100%}.phm-text-link{font-weight:900;text-decoration-thickness:1px;text-underline-offset:4px}
.phm-choice-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:18px}
.phm-choice-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.phm-choice-actions .phm-button{width:100%;min-height:52px}
.phm-section{padding:62px 0;border-top:1px solid rgba(21,20,16,.18)}
#before-you-apply{scroll-margin-top:92px}.phm-section h2,.phm-page-heading h2,.phm-agreement-card h1,.phm-agreement-card h2,.phm-panel h2,.phm-success-card h1,.phm-success-card h2,.phm-login-card h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,7vw,4.4rem);line-height:.98;letter-spacing:-.04em}.phm-split{display:grid;gap:24px}.phm-split h2{margin:0}.phm-copy-card{background:var(--phm-paper);border:1px solid var(--phm-line);padding:24px}.phm-copy-card p:first-child{margin-top:0}.phm-copy-card p:last-of-type{margin-bottom:0}
.phm-steps{display:grid;grid-template-columns:1fr;gap:13px}.phm-steps article{padding:24px;background:var(--phm-paper);border:1px solid var(--phm-line)}.phm-steps article>span{display:inline-block;font-size:.7rem;font-weight:950;border:1px solid currentColor;padding:5px 8px;border-radius:999px}.phm-steps h3{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;line-height:1;margin:18px 0 10px}.phm-steps p{margin:0;opacity:.75}.phm-section-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:22px}.phm-section-head h2{margin:0}.phm-final-cta{text-align:center;background:var(--phm-aqua);padding:58px 22px;margin-bottom:64px}.phm-final-cta h2{font-size:clamp(2.4rem,9vw,5.3rem);margin:0 auto 26px}.phm-final-cta--compact{margin-top:50px}
.phm-page{padding:50px 0 70px}.phm-page-heading{max-width:900px;margin:0 0 34px}.phm-page-heading h1{font-size:clamp(3rem,11vw,6.5rem)}.phm-page-heading p{max-width:720px;font-size:1.08rem}.phm-apply-page{padding-top:18px}.phm-agreement-card{background:var(--phm-aqua);padding:22px;margin:0 0 24px;border:1px solid rgba(21,20,16,.25)}.phm-agreement-card h1,.phm-agreement-card h2{font-size:clamp(2rem,7vw,3.7rem);margin:0 0 14px}.phm-agreement-card>p:not(.phm-kicker){max-width:860px}.phm-form{background:var(--phm-paper);border:1px solid var(--phm-line);padding:20px}.phm-success-card{background:var(--phm-paper);border:1px solid var(--phm-line);padding:28px;text-align:center}.phm-success-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--phm-aqua);margin:0 auto;font-weight:950;font-size:1.5rem}.phm-success-card h1,.phm-success-card h2{font-size:clamp(2.4rem,9vw,4.5rem);margin:18px 0 12px}.phm-success-card p{max-width:650px;margin:0 auto 22px}
.phm-login-card h1{margin:0 0 14px}.phm-login-card>.phm-kicker{margin-bottom:9px}

/* Footer */
.phm-site-footer{background:var(--phm-ink);color:#fff0c7;padding:46px 0 28px}.phm-footer-grid{display:grid;gap:28px}.phm-footer-brand{display:flex;align-items:center;gap:14px}.phm-footer-brand img{width:72px;height:72px;border-radius:50%;object-fit:cover}.phm-footer-brand strong{display:block;text-transform:uppercase;letter-spacing:.07em}.phm-footer-brand span{font-size:.82rem;opacity:.7}.phm-footer-actions{display:flex;gap:9px;flex-wrap:wrap}.phm-footer-actions a{text-decoration:none;border:1px solid rgba(255,240,199,.5);padding:10px 12px;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.phm-footer-actions .phm-footer-staff-link{display:inline-flex;opacity:.82}.phm-footer-meta{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,240,199,.18);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.75rem;opacity:.65}

@media(max-width:420px){
  .phm-shell{width:min(calc(100% - 24px),var(--phm-max))}
  .phm-brand img{width:50px;height:50px}.phm-brand-copy strong{font-size:.8rem}.phm-brand-copy small{font-size:.55rem}.phm-mobile-nav a{padding-inline:8px}
  .phm-agreement-card,.phm-form{padding:17px}
}
@media(min-width:760px){
  .phm-shell{width:min(calc(100% - 56px),var(--phm-max))}.phm-main-nav{display:flex}.phm-mobile-nav{display:none}.phm-footer-actions .phm-footer-staff-link{display:none}.phm-hero{padding:105px 0 92px}.phm-section{padding:86px 0}.phm-split{grid-template-columns:1.05fr .95fr;align-items:start}.phm-steps{grid-template-columns:repeat(3,1fr)}.phm-form{padding:32px}.phm-agreement-card{padding:32px}.phm-choice-links{flex-direction:row;gap:24px;align-items:center}.phm-choice-actions{display:flex;flex-wrap:wrap}.phm-choice-actions .phm-button{width:auto}.phm-footer-grid{grid-template-columns:1fr auto;align-items:center}.phm-private-header{min-height:78px}.phm-private-header-inner{min-height:78px}.phm-private-header .phm-brand img{width:52px;height:52px}.phm-private-main{min-height:calc(100dvh - 78px)}
}
