/* Pro Writer OS — site styles. Colours and fonts live in theme.json; this file lays out the sections. */
:root{
  --pw-bg:#111110; --pw-surface:#1a1917; --pw-surface-2:#191814; --pw-line:#2a2722; --pw-line-2:#332f29; --pw-line-3:#3a352d;
  --pw-text:#f1ebe0; --pw-muted:#cfc7b9; --pw-muted-2:#bdb5a7; --pw-dim:#a39b8d; --pw-faint:#8f887b;
  --pw-gold:#e2b55c; --pw-gold-ink:#1a1408; --pw-cream:#f3ead7;
  --pw-serif:Fraunces, Georgia, serif; --pw-sans:Manrope, system-ui, sans-serif; --pw-mono:'Courier Prime','Courier New',monospace;
  --pw-gutter:clamp(20px,5vw,80px); --pw-gap:clamp(96px,11vw,160px);
}
html{scroll-behavior:smooth}
body{background:var(--pw-bg);color:var(--pw-text);-webkit-font-smoothing:antialiased}
.wp-site-blocks{padding:0!important}
.wp-site-blocks > *, .pwos-main > *, .pwos-main .entry-content > *{margin-block-start:0}
.pwos-main .entry-content{margin:0}
img{max-width:100%;height:auto}
::selection{background:rgba(226,181,92,.35)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--pw-gold);outline-offset:3px;border-radius:4px}

/* ---------- header ---------- */
.pwos-header{background:rgba(17,17,16,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid #25231f;padding:14px var(--pw-gutter)!important;gap:32px!important;min-height:72px;box-sizing:border-box}
header.wp-block-template-part{position:sticky;top:0;z-index:50;margin:0!important}
.admin-bar header.wp-block-template-part{top:32px}
@media (max-width:782px){.admin-bar header.wp-block-template-part{top:0;position:relative}}
footer.wp-block-template-part{margin:0!important}
.pwos-logo{display:flex;align-items:center;gap:12px;text-decoration:none!important;color:var(--pw-text)!important;white-space:nowrap}
.pwos-logo img{width:36px;height:36px;border-radius:8px}
.pwos-logo span{font-family:var(--pw-serif);font-size:22px;font-weight:600;letter-spacing:-.01em}
.pwos-nav{flex-grow:1;font-size:15px;font-weight:500}
.pwos-nav .wp-block-navigation-item__content{color:#d6cfc2!important;text-decoration:none}
.pwos-nav .wp-block-navigation-item__content:hover{color:var(--pw-text)!important}
.pwos-nav .wp-block-navigation__container{gap:32px}
.pwos-nav .wp-block-navigation__responsive-container-open,.pwos-nav .wp-block-navigation__responsive-container-close{color:var(--pw-text)}
.pwos-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--pw-bg)!important;color:var(--pw-text)!important;padding:32px var(--pw-gutter)}
.pwos-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:24px;font-size:22px}
.pwos-header-cta{flex-shrink:0}
.pwos-header-cta .wp-block-button__link{padding:11px 20px!important;font-size:15px!important;border-radius:10px!important}
@media (max-width:900px){.wp-block-buttons.pwos-header-cta{display:none!important}}
@media (max-width:900px){.wp-block-navigation.pwos-nav{justify-content:flex-end!important}}

/* ---------- shared ---------- */
.pwos-section{max-width:1280px;margin:0 auto!important;padding:var(--pw-gap) var(--pw-gutter) 0!important;box-sizing:content-box}
.pwos-section > *{margin-block-start:0;margin-block-end:0}
.pwos-center{text-align:center}
.pwos-center > *{margin-left:auto!important;margin-right:auto!important}
.pwos-eyebrow{font-family:var(--pw-mono);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--pw-gold);margin:0 0 16px!important}
h2.pwos-h2,.pwos-h2{font-size:clamp(34px,4.2vw,52px);line-height:1.08;letter-spacing:-.02em;margin:0!important}
h2.pwos-h2-sm{font-size:clamp(32px,3.6vw,46px);line-height:1.1;margin:0!important}
.pwos-lede{font-size:clamp(17px,1.5vw,19px);line-height:1.6;color:var(--pw-muted);margin:20px 0 0!important;max-width:720px}
.pwos-center .pwos-lede{margin-left:auto!important;margin-right:auto!important}
.pwos-note{font-size:14px;color:var(--pw-faint);margin:16px 0 0!important}
.pwos-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:80px}
.pwos-head-row > *{margin:0!important}
.pwos-head-row .pwos-lede{max-width:460px}
@media (max-width:900px){.pwos-head-row{flex-direction:column;align-items:flex-start;gap:20px}}

/* buttons */
.pwos-btns{gap:16px!important;margin-top:40px!important}
.pwos-center .pwos-btns,.pwos-btns.is-content-justification-center{justify-content:center}
.wp-block-button.pwos-btn .wp-block-button__link{display:inline-flex;align-items:center;min-height:56px;padding:0 30px;border-radius:12px;font-size:17px;font-weight:700;box-sizing:border-box;text-decoration:none}
.wp-block-button.pwos-btn-primary .wp-block-button__link{background:var(--pw-gold);color:var(--pw-gold-ink)}
.wp-block-button.pwos-btn-primary .wp-block-button__link:hover{background:#f0c877}
.wp-block-button.pwos-btn-ghost .wp-block-button__link{background:transparent;color:var(--pw-text);border:1px solid #4a453c;font-weight:600}
.wp-block-button.pwos-btn-ghost .wp-block-button__link:hover{border-color:var(--pw-gold);color:var(--pw-text)}

/* ---------- hero ---------- */
.pwos-hero{padding-top:clamp(72px,9vw,120px)!important}
h1.pwos-hero-title{font-size:clamp(44px,6.2vw,80px);line-height:1.04;letter-spacing:-.025em;margin:28px auto 0!important;max-width:1100px}
.pwos-hero-sub{font-size:clamp(18px,1.7vw,21px);line-height:1.55;color:var(--pw-muted);max-width:760px;margin:32px auto 0!important}
.pwos-tagline{font-family:var(--pw-serif);font-style:italic;font-size:clamp(22px,2.2vw,30px);color:#e9dcc2;margin:56px auto 0!important}
h1.pwos-page-title{font-size:clamp(40px,5vw,68px);line-height:1.05;letter-spacing:-.025em;margin:0 auto!important;max-width:1000px}

/* ---------- card grids ---------- */
.pwos-grid-3{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:56px!important}
.pwos-grid-2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px!important}
.pwos-grid-3 > *,.pwos-grid-2 > *{margin:0!important}
@media (max-width:900px){.pwos-grid-3,.pwos-grid-2{grid-template-columns:1fr}}
.pwos-card{background:var(--pw-surface);border:1px solid var(--pw-line);border-radius:16px;overflow:hidden;display:flex!important;flex-direction:column}
.pwos-card > *{margin:0!important}
.pwos-card figure{margin:0!important}
.pwos-card figure img{display:block;width:100%;height:400px;object-fit:cover;object-position:center top}
.pwos-card .pwos-card-body{padding:28px!important;display:flex;flex-direction:column;gap:10px}
.pwos-card .pwos-card-body > *{margin:0!important}
.pwos-card-kicker{font-family:var(--pw-mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--pw-gold)}
.pwos-card h3{font-size:27px;line-height:1.2;margin:0!important}
.pwos-card p{font-size:16px;line-height:1.6;color:var(--pw-muted-2)}
.pwos-img-bottom img{object-position:center bottom!important}
.pwos-plain-card{background:var(--pw-surface);border:1px solid var(--pw-line);border-radius:16px;padding:32px!important}
.pwos-plain-card > *{margin:0!important}
.pwos-plain-card > * + *{margin-top:12px!important}

/* ---------- framed screenshot ---------- */
.pwos-frame{max-width:1240px;margin:56px auto 0!important;border-radius:16px;border:1px solid var(--pw-line-2);overflow:hidden;background:var(--pw-surface)}
.pwos-frame img{display:block;width:100%}
.pwos-frame-caption{font-family:var(--pw-serif);font-size:clamp(20px,2vw,26px);color:#e9dcc2;margin:28px auto 0!important;text-align:center}
.pwos-shot img{display:block;width:100%;border-radius:14px;border:1px solid var(--pw-line-2)}
.pwos-shot figcaption{font-size:15px;line-height:1.55;color:var(--pw-muted-2);margin-top:16px!important;text-align:left}
.pwos-shot figcaption strong{color:var(--pw-text)}
.pwos-fig-440 img{height:440px;object-fit:cover;object-position:center top}
.pwos-fig-300 img{height:300px;object-fit:cover;object-position:left top}
.pwos-fig-540 img{height:540px;object-fit:cover;object-position:left top}
.pwos-pos-left img{object-position:12% top}
.pwos-pos-bottom img{object-position:center bottom}
@media (max-width:900px){.pwos-fig-440 img,.pwos-fig-540 img{height:auto}}

/* ---------- steps ---------- */
.pwos-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:72px!important;text-align:left}
.pwos-steps > *{margin:0!important;border-top:1px solid var(--pw-line-3);padding-top:28px!important}
.pwos-steps > * > *{margin:0!important}
.pwos-steps > * > * + *{margin-top:12px!important}
.pwos-step-num{font-family:var(--pw-serif);font-size:44px;color:var(--pw-gold)}
.pwos-steps h3{font-family:var(--pw-sans);font-size:22px;font-weight:700;letter-spacing:0}
.pwos-steps p{font-size:16px;line-height:1.65;color:var(--pw-muted-2)}
@media (max-width:900px){.pwos-steps{grid-template-columns:1fr;gap:32px}}

/* ---------- split (text + image) ---------- */
.pwos-split{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px;align-items:center}
.pwos-split > *{margin:0!important}
.pwos-split .pwos-list{margin-top:32px!important}
@media (max-width:900px){.pwos-split{grid-template-columns:1fr;gap:40px}.pwos-split .pwos-split-media{order:2}}
ul.pwos-list{list-style:none;padding:0!important;display:flex;flex-direction:column;gap:16px;font-size:17px;line-height:1.5;color:#d6cfc2}
ul.pwos-list li{position:relative;padding-left:30px;margin:0!important}
ul.pwos-list li::before{content:"—";position:absolute;left:0;color:var(--pw-gold)}

/* ---------- band (narrative designers) ---------- */
.pwos-band{background:var(--pw-surface-2);border-top:1px solid var(--pw-line);border-bottom:1px solid var(--pw-line);margin-top:var(--pw-gap)!important;padding:clamp(72px,8vw,120px) 0!important}
.pwos-band > .pwos-section{padding-top:0!important}
.pwos-band h3.pwos-band-h3{font-size:30px;margin:0!important}
.pwos-band .pwos-feature{display:flex!important;flex-direction:column;gap:16px}
.pwos-band .pwos-feature > *{margin:0!important}
.pwos-band .pwos-feature p{font-size:16px;line-height:1.6;color:var(--pw-muted-2)}
.pwos-hood{margin-top:64px!important;padding-top:32px!important;border-top:1px solid #2f2b25}
.pwos-hood-title{font-family:var(--pw-mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--pw-faint);margin:0!important}
ul.pwos-hood-list{list-style:none;padding:0!important;margin:20px 0 0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:48px;row-gap:14px;font-size:15px;line-height:1.55;color:#a9a193}
ul.pwos-hood-list li{margin:0!important}
@media (max-width:900px){ul.pwos-hood-list{grid-template-columns:1fr}}

/* ---------- objection + privacy ---------- */
.pwos-outline-box{border:1px solid var(--pw-line-3);border-radius:20px;padding:clamp(36px,5vw,64px) clamp(28px,6vw,80px)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px;align-items:center}
.pwos-outline-box > *{margin:0!important}
.pwos-outline-box h2{font-size:clamp(30px,3.2vw,44px);line-height:1.12}
.pwos-outline-box p{font-size:18px;line-height:1.65;color:var(--pw-muted)}
.pwos-cream-box{background:var(--pw-cream);color:#1d1a14;border-radius:20px;padding:clamp(40px,5vw,72px) clamp(28px,6vw,80px)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px;align-items:center}
.pwos-cream-box > *{margin:0!important}
.pwos-cream-box h2{color:#1d1a14!important;font-size:clamp(32px,3.6vw,48px);line-height:1.1}
.pwos-cream-box p{font-size:18px;line-height:1.65;color:#3d372d}
.pwos-tight-top{padding-top:80px!important}
@media (max-width:900px){.pwos-outline-box,.pwos-cream-box{grid-template-columns:1fr;gap:24px}}

/* ---------- founder ---------- */
.pwos-founder{display:grid!important;grid-template-columns:2fr 3fr;gap:80px;align-items:start}
.pwos-founder > *{margin:0!important}
.pwos-founder-body > *{margin:0!important}
.pwos-founder-body > * + *{margin-top:22px!important}
.pwos-founder-body p{font-size:18px;line-height:1.7;color:var(--pw-muted)}
.pwos-founder-body p.pwos-founder-lead{font-size:22px;line-height:1.55;color:var(--pw-text)}
.pwos-founder-body .pwos-small{font-size:16px;color:var(--pw-dim)}
.pwos-credit{color:var(--pw-text);letter-spacing:.02em}
@media (max-width:900px){.pwos-founder{grid-template-columns:1fr;gap:32px}}

/* ---------- pricing ---------- */
.pwos-plans{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1040px;margin:48px auto 0!important;text-align:left}
.pwos-plans > *{margin:0!important}
.pwos-plan{background:var(--pw-surface);border:1px solid var(--pw-line);border-radius:16px;padding:40px!important;display:flex!important;flex-direction:column;gap:16px}
.pwos-plan > *{margin:0!important}
.pwos-plan.pwos-plan-featured{background:#1f1d19;border-color:var(--pw-gold)}
.pwos-plan-name{font-size:15px;font-weight:700;color:#d6cfc2}
.pwos-plan-featured .pwos-plan-name{color:var(--pw-gold)}
.pwos-price{font-family:var(--pw-serif);font-size:48px;font-weight:600;line-height:1.1}
.pwos-price s{font-size:28px;color:var(--pw-faint);font-weight:400;margin-right:12px;text-decoration-thickness:2px}
.pwos-price-note{font-family:var(--pw-mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--pw-gold)}
.pwos-plan p{font-size:16px;line-height:1.6;color:var(--pw-muted-2)}
.pwos-plan .wp-block-buttons{margin-top:auto!important}
.pwos-plan .wp-block-button,.pwos-plan .wp-block-button__link{width:100%;justify-content:center}
.pwos-how{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1040px;margin:32px auto 0!important;text-align:left;font-size:15px;line-height:1.55;color:var(--pw-muted-2)}
.pwos-how > *{margin:0!important}
.pwos-how strong{color:var(--pw-text)}
@media (max-width:900px){.pwos-plans,.pwos-how{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.pwos-faq-wrap{display:grid!important;grid-template-columns:1fr 2fr;gap:80px}
.pwos-faq-wrap > *{margin:0!important}
@media (max-width:900px){.pwos-faq-wrap{grid-template-columns:1fr;gap:24px}}
.pwos-faq-list > *{margin:0!important}
details.pwos-faq{border-top:1px solid #2f2b25;padding:22px 0!important;margin:0!important}
.pwos-faq-list details.pwos-faq:last-child{border-bottom:1px solid #2f2b25}
details.pwos-faq summary{font-size:18px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px}
details.pwos-faq summary::-webkit-details-marker{display:none}
details.pwos-faq summary::after{content:"+";color:var(--pw-gold);font-size:22px;line-height:1;font-weight:400}
details.pwos-faq[open] summary::after{content:"–"}
details.pwos-faq p{font-size:16px;line-height:1.65;color:var(--pw-muted-2);margin:12px 0 0!important}

/* ---------- video ---------- */
.pwos-video{max-width:1120px;margin:48px auto 0!important;border-radius:16px;overflow:hidden;border:1px solid var(--pw-line-2);background:#000}
.pwos-video video{display:block;width:100%;aspect-ratio:16/9}

/* ---------- long-form pages ---------- */
.pwos-prose{max-width:760px;margin:0 auto!important;padding:var(--pw-gap) var(--pw-gutter) 0!important;box-sizing:content-box}
.pwos-prose > *{margin:0!important}
.pwos-prose > * + *{margin-top:18px!important}
.pwos-prose h1{font-size:clamp(38px,4.6vw,56px);line-height:1.08}
.pwos-prose h2{font-size:clamp(26px,2.6vw,32px);margin-top:48px!important}
.pwos-prose h3{font-family:var(--pw-sans);font-size:19px;font-weight:700;letter-spacing:0;margin-top:32px!important}
.pwos-prose p,.pwos-prose li{font-size:17px;line-height:1.7;color:var(--pw-muted)}
.pwos-prose ul{padding-left:22px}
.pwos-prose li + li{margin-top:8px}
.pwos-prose .pwos-updated{font-size:14px;color:var(--pw-faint)}
.pwos-review{border:1px dashed var(--pw-gold);border-radius:12px;padding:16px 20px!important;font-size:15px!important;color:var(--pw-gold)!important}

/* keyboard table */
.pwos-keys table{width:100%;border-collapse:collapse;font-size:16px}
.pwos-keys td{border-bottom:1px solid var(--pw-line);padding:14px 12px 14px 0;color:var(--pw-muted);vertical-align:top}
.pwos-keys td:first-child{white-space:nowrap;color:var(--pw-text);font-weight:700;width:34%}
.pwos-keys kbd{font-family:var(--pw-sans);background:var(--pw-surface);border:1px solid var(--pw-line-2);border-radius:6px;padding:2px 8px;font-size:14px}

/* feature detail lists (features page) */
.pwos-feature-cols{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;row-gap:28px;margin-top:48px!important}
.pwos-feature-cols > *{margin:0!important}
.pwos-feature-cols h3{font-family:var(--pw-sans);font-size:19px;font-weight:700;letter-spacing:0;margin:0 0 8px!important}
.pwos-feature-cols p{font-size:16px;line-height:1.6;color:var(--pw-muted-2);margin:0!important}
@media (max-width:900px){.pwos-feature-cols{grid-template-columns:1fr}}

/* ---------- final CTA + footer ---------- */
.pwos-final h2{font-size:clamp(36px,4.4vw,56px)}
.pwos-footer{margin-top:var(--pw-gap)!important;background:#0c0c0b;border-top:1px solid #25231f;padding:64px var(--pw-gutter)!important}
.pwos-footer-inner{max-width:1280px;margin:0 auto!important;display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;font-size:15px;line-height:1.8;color:var(--pw-dim)}
.pwos-footer-inner > *{margin:0!important}
.pwos-footer a{color:var(--pw-dim);text-decoration:none}
.pwos-footer a:hover{color:var(--pw-text)}
.pwos-footer h4{font-family:var(--pw-sans);font-size:15px;font-weight:700;color:var(--pw-text);letter-spacing:0;margin:0 0 6px!important}
.pwos-footer ul{list-style:none;padding:0;margin:0}
.pwos-footer-legal{max-width:1280px;margin:48px auto 0!important;padding-top:24px;border-top:1px solid #25231f;font-size:13px;color:var(--pw-faint)}
@media (max-width:900px){.pwos-footer-inner{grid-template-columns:1fr 1fr}.pwos-footer-brand{grid-column:1/-1}}

/* ---------- coming soon ---------- */
.pwos-soon{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:22px;padding:24px;box-sizing:border-box}
.pwos-soon img{width:88px;height:88px;border-radius:18px}
.pwos-soon h1{font-family:var(--pw-serif);font-weight:600;font-size:clamp(44px,6vw,72px);letter-spacing:-.02em;margin:0;line-height:1.05}
.pwos-soon p{font-size:clamp(18px,2vw,24px);color:var(--pw-muted);margin:0}
.pwos-soon .pwos-eyebrow{margin:0!important}
