/* Shared styles for the marketing / info pages: contact, shipping, tracking,
   guides, about, blog, prose pages, errors. Prefix: pg-. Tokens from site.css. */

/* ---------- helpers ---------- */
.pg-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.pg-main{padding:8px 0 24px}
.pg-head{padding:36px 0 40px}
.pg-head h1{font-size:clamp(30px,4vw,46px);max-width:20ch}
.pg-head .lede{margin:14px 0 0}
.pg-head--wide h1{max-width:26ch}
.pg-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

.pg-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 22px}
.pg-tabs a{padding:8px 14px;border-radius:99px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font-weight:600;font-size:13.5px}
.pg-tabs a:hover{border-color:var(--ink);color:var(--ink)}
.pg-tabs a.is-active{background:var(--ink);border-color:var(--ink);color:#fff}

.pg-cta{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;background:var(--navy);color:#cfe1d6;
  border-radius:var(--r-xl);padding:36px 40px;background-image:radial-gradient(90% 140% at 100% 0%,rgba(26,127,75,.35),transparent 60%)}
.pg-cta h2{color:#fff;font-size:clamp(24px,3vw,32px);margin:0 0 6px}
.pg-cta p{margin:0;max-width:52ch}
@media (max-width:640px){.pg-cta{padding:26px 22px}.pg-cta .btn-row,.pg-cta .btn{width:100%}}

/* ---------- FAQ ---------- */
.pg-faq{display:grid;gap:10px}
.pg-faq__item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);transition:border-color .12s}
.pg-faq__item:hover{border-color:var(--line-2)}
.pg-faq__item summary{list-style:none;cursor:pointer;padding:16px 18px;font:650 16px/1.35 var(--font-display);color:var(--ink);letter-spacing:-.01em;
  display:flex;justify-content:space-between;align-items:center;gap:16px;border-radius:var(--r)}
.pg-faq__item summary::-webkit-details-marker{display:none}
.pg-faq__item summary:focus-visible{box-shadow:var(--ring)}
.pg-faq__chev{flex:0 0 auto;color:var(--muted);display:inline-flex}
.pg-faq__item[open] .pg-faq__chev{transform:rotate(180deg)}
.pg-faq__item[open] summary{padding-bottom:8px}
.pg-faq__body{padding:0 18px 18px;color:var(--text);max-width:68ch}
.pg-faq__body p:last-child,.pg-faq__body ul:last-child{margin-bottom:0}
.pg-faq__body ul{padding-left:1.2em}

/* ---------- numbered steps (guides) ---------- */
.pg-steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;counter-reset:pg}
.pg-steps--row{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.pg-step{counter-increment:pg;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 22px 22px 22px}
.pg-step::before{content:counter(pg);display:grid;place-content:center;width:34px;height:34px;border-radius:10px;background:var(--navy);color:#fff;
  font:800 16px var(--font-display);margin-bottom:14px}
.pg-step h3{font-size:18px;margin-bottom:6px}
.pg-step p{margin:0 0 8px;color:var(--muted)}
.pg-step p:last-child{margin-bottom:0}
.pg-step .link{margin-top:6px}
.pg-step__time{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:650;color:var(--brand-2);background:var(--brand-wash);border-radius:99px;padding:3px 10px;margin-bottom:10px}

/* timeline steps (vertical, larger, used on register / how it works) */
.pg-flow{list-style:none;margin:0;padding:0;counter-reset:flow}
.pg-flow>li{counter-increment:flow;position:relative;padding:0 0 28px 64px}
.pg-flow>li::before{content:counter(flow);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;
  display:grid;place-content:center;font:800 17px var(--font-display);z-index:1}
.pg-flow>li::after{content:"";position:absolute;left:20px;top:46px;bottom:4px;width:2px;background:var(--line-2)}
.pg-flow>li:last-child{padding-bottom:0}
.pg-flow>li:last-child::after{display:none}
.pg-flow h3{font-size:20px;margin:6px 0 6px}
.pg-flow p{margin:0 0 8px;color:var(--text);max-width:62ch}
.pg-flow ul{margin:6px 0 0;padding-left:1.2em;color:var(--text)}
.pg-flow li li{margin:3px 0}
@media (max-width:560px){.pg-flow>li{padding-left:52px}.pg-flow>li::before{width:36px;height:36px;font-size:15px}.pg-flow>li::after{left:17px;top:40px}}

/* ---------- layout: main + sticky aside ---------- */
.pg-layout{display:grid;gap:32px;grid-template-columns:minmax(0,1fr) 340px;align-items:start}
@media (max-width:1020px){.pg-layout{grid-template-columns:minmax(0,1fr)}}
.pg-aside{display:grid;gap:16px;position:sticky;top:calc(var(--header-h) + 20px)}
@media (max-width:1020px){.pg-aside{position:static}}
.pg-block{margin-bottom:56px}
.pg-block:last-child{margin-bottom:0}
.pg-block>h2{margin-bottom:6px}
.pg-block>.lede{margin:0 0 22px}
.pg-block>h2+.pg-sub{margin:0 0 22px;color:var(--muted)}

.pg-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
.pg-card h2,.pg-card h3{margin-bottom:6px}
.pg-card>p.muted{margin:0 0 18px}
.pg-card--soft{background:var(--soft)}
.pg-card--brand{background:var(--brand-wash);border-color:var(--brand-tint)}

.pg-contactlist{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.pg-contactlist li{display:flex;gap:14px;align-items:flex-start}
.pg-contactlist .svg-icon{color:var(--brand);margin-top:2px}
.pg-contactlist b{display:block;font-size:13px;color:var(--muted);font-weight:600}
.pg-contactlist span,.pg-contactlist a{color:var(--ink);font-weight:600;word-break:break-word}
.pg-contactlist a:hover{color:var(--brand)}

.pg-label-row{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.pg-num{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-content:center;font:800 13px var(--font-display)}
.pg-label-row h2,.pg-label-row h3{margin:0;font-size:19px}

/* ---------- shipping quote ---------- */
.pg-ship{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
@media (max-width:900px){.pg-ship{grid-template-columns:minmax(0,1fr)}}
.pg-quote{margin-top:20px;border-radius:var(--r-lg);border:1px solid var(--ok-line);background:var(--ok-wash);padding:20px}
.pg-quote__fig{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pg-quote__fig small{font-size:13px;font-weight:650;color:var(--ok)}
.pg-quote__amt{font:800 40px/1 var(--font-display);color:var(--ink);letter-spacing:-.03em}
.pg-quote__math{margin:8px 0 0;color:var(--text);font-size:14px}
.pg-quote__incl{margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--ok-line);display:grid;gap:8px;font-size:14px;list-style:none}
.pg-quote__incl li{display:flex;gap:10px;align-items:flex-start}
.pg-quote__incl .svg-icon{margin-top:2px;flex:0 0 auto}
.pg-quote__incl .yes .svg-icon{color:var(--ok)}
.pg-quote__incl .no .svg-icon{color:var(--muted)}
.pg-quote__next{margin-top:16px}
.pg-quote--err{border-color:var(--warn-line);background:var(--warn-wash)}
.pg-quote--err p{margin:0 0 10px}

.pg-info{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.pg-info__item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}
.pg-info__item .tile__icon{margin-bottom:12px}
.pg-info__item h3{font-size:17px;margin-bottom:6px}
.pg-info__item p{margin:0;color:var(--muted);font-size:14.5px}
.pg-info__item p+p{margin-top:8px}
.pg-info__item b{color:var(--ink)}

.pg-rates{width:100%;border-collapse:collapse;font-size:14px}
.pg-rates th,.pg-rates td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}
.pg-rates th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--soft)}

/* fee table on guides */
.pg-sum{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.pg-sum__row{display:flex;justify-content:space-between;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line);align-items:baseline}
.pg-sum__row:last-child{border-bottom:0}
.pg-sum__row b{color:var(--ink)}
.pg-sum__row small{display:block;color:var(--muted);font-size:13px;font-weight:400}
.pg-sum__row .amt{font:700 16px var(--font-display);color:var(--ink);white-space:nowrap;text-align:right}
.pg-sum__row--total{background:var(--soft)}

.pg-two{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:760px){.pg-two{grid-template-columns:minmax(0,1fr)}}
.pg-three{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.pg-three{grid-template-columns:minmax(0,1fr)}}

.pg-checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pg-checks li{display:flex;gap:10px;align-items:flex-start}
.pg-checks .svg-icon{color:var(--ok);margin-top:2px;flex:0 0 auto}
.pg-checks--no .svg-icon{color:var(--muted)}

.pg-example{background:var(--brand-wash);border:1px solid var(--brand-tint);border-radius:var(--r-lg);padding:20px 22px}
.pg-example h3{font-size:16px;margin-bottom:10px}
.pg-example ol{margin:0;padding-left:1.2em;display:grid;gap:6px}

/* ---------- tracking ---------- */
.pg-trackform{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:26px;box-shadow:var(--sh-2);max-width:720px}
.pg-trackform__row{display:flex;gap:10px}
.pg-trackform__row .input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.08em;font-size:20px;font-weight:700;min-height:58px}
.pg-trackform__row .btn{min-height:58px;padding:0 28px}
@media (max-width:560px){.pg-trackform{padding:18px}.pg-trackform__row{flex-direction:column}.pg-trackform__row .btn{width:100%}}
.pg-trackform .help{margin-top:10px}

.pg-trackres{margin-top:28px;display:grid;gap:20px}
.pg-trackres__head{display:flex;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;align-items:flex-start}
.pg-trackres__code{font:700 13px var(--font-body);letter-spacing:.08em;color:var(--muted);margin:0 0 4px}
.pg-trackres__route{margin:6px 0 0;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pg-status{padding:12px 16px;border-radius:var(--r);background:var(--brand-wash);border:1px solid var(--brand-tint);min-width:200px}
.pg-status small{display:block;font-size:12px;color:var(--muted);font-weight:600}
.pg-status strong{display:block;font:800 19px var(--font-display);color:var(--ink);letter-spacing:-.02em}
.pg-status span{display:block;font-size:13.5px;color:var(--text)}
.pg-status--delivered{background:var(--ok-wash);border-color:var(--ok-line)}
.pg-status--on_hold{background:var(--warn-wash);border-color:var(--warn-line)}

.pg-stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;counter-reset:st}
.pg-stage{position:relative;text-align:center;padding:0 6px;font-size:13.5px;font-weight:600;color:var(--muted)}
.pg-stage__dot{position:relative;z-index:1;margin:0 auto 10px;width:34px;height:34px;border-radius:50%;background:var(--surface);border:2px solid var(--line-2);
  display:grid;place-content:center;font:700 13px var(--font-display);color:var(--muted)}
.pg-stage::before{content:"";position:absolute;left:-50%;right:50%;top:16px;height:3px;background:var(--line-2)}
.pg-stage:first-child::before{display:none}
.pg-stage.is-done::before,.pg-stage.is-now::before{background:var(--ok)}
.pg-stage.is-done .pg-stage__dot{background:var(--ok);border-color:var(--ok);color:#fff}
.pg-stage.is-done{color:var(--text)}
.pg-stage.is-now .pg-stage__dot{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 0 0 6px var(--brand-tint)}
.pg-stage.is-now{color:var(--ink);font-weight:750}
.pg-stage__now{display:block;font-size:11.5px;font-weight:700;color:var(--brand-2);margin-top:2px;letter-spacing:.02em}
@media (max-width:640px){
  .pg-stages{grid-template-columns:minmax(0,1fr);gap:0}
  .pg-stage{display:flex;align-items:center;gap:14px;text-align:left;padding:0 0 22px;min-height:56px}
  .pg-stage:last-child{padding-bottom:0}
  .pg-stage__dot{margin:0;flex:0 0 34px}
  .pg-stage::before{left:16px;right:auto;top:-22px;bottom:auto;width:3px;height:22px}
  .pg-stage:first-child::before{display:none}
}
.pg-stages-card{padding:26px 22px}

.pg-updates{list-style:none;margin:0;padding:0}
.pg-updates li{position:relative;padding:0 0 18px 24px;border-left:2px solid var(--line);margin-left:6px}
.pg-updates li:last-child{padding-bottom:0;border-color:transparent}
.pg-updates li::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--surface);border:2px solid var(--line-2)}
.pg-updates li:first-child::before{background:var(--brand);border-color:var(--brand)}
.pg-updates strong{display:block;color:var(--ink)}
.pg-updates time,.pg-updates .when{font-size:12.5px;color:var(--muted)}
.pg-updates p{margin:2px 0 0;color:var(--text);font-size:14px}

.pg-help{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:36px}

/* ---------- prose pages ---------- */
.pg-doc{display:grid;gap:32px;grid-template-columns:minmax(0,1fr);align-items:start;max-width:820px}
.pg-doc.has-toc{max-width:none}
@media (min-width:981px){.pg-doc.has-toc{grid-template-columns:230px minmax(0,820px);gap:40px}}
.pg-toc{position:sticky;top:calc(var(--header-h) + 24px);font-size:14px}
@media (max-width:980px){.pg-toc{position:static;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}}
.pg-toc h2{font:700 12px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.pg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;border-left:2px solid var(--line)}
.pg-toc a{display:block;padding:6px 12px;margin-left:-2px;border-left:2px solid transparent;color:var(--muted);font-weight:550;line-height:1.35}
.pg-toc a:hover{color:var(--ink)}
.pg-toc a.is-current{color:var(--brand-2);border-left-color:var(--brand);font-weight:650}
.pg-toc[hidden]{display:none}
.pg-article{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,4vw,44px)}
.pg-article .prose{max-width:none;font-size:16.5px;line-height:1.75}
.pg-article .prose h2{font-size:24px;margin:2em 0 .5em;scroll-margin-top:calc(var(--header-h) + 20px)}
.pg-article .prose>h2:first-child,.pg-article .prose>p:first-child+h2{margin-top:1.4em}
.pg-article .prose h3{font-size:18px;margin:1.6em 0 .4em}
.pg-article .prose p{margin:0 0 1.1em}
.pg-foot{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:14.5px;display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center;justify-content:space-between}

/* ---------- about ---------- */
.pg-facts{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 28px;font-size:14px;font-weight:600;color:var(--text)}
.pg-facts li{display:inline-flex;align-items:center;gap:8px}
.pg-facts .svg-icon{color:var(--brand)}
.pg-yard{display:grid;gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}
@media (max-width:860px){.pg-yard{grid-template-columns:minmax(0,1fr)}}

/* ---------- blog ---------- */
.pg-posts{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.pg-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pg-posts{grid-template-columns:minmax(0,1fr)}}
.pg-post{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;
  transition:border-color .15s,box-shadow .15s}
.pg-post:hover{border-color:var(--line-2);box-shadow:var(--sh-2)}
.pg-post__title{font-size:19px;line-height:1.28}
.pg-post__title a{color:var(--ink)}
.pg-post__title a:hover{color:var(--brand)}
.pg-post__excerpt{margin:0;color:var(--muted);font-size:14.5px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.pg-post__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:13px}
.pg-post--lead{grid-column:1/-1;padding:clamp(24px,4vw,40px);background:var(--navy);border-color:var(--navy);color:#cfe1d6;
  background-image:radial-gradient(80% 140% at 100% 0%,rgba(26,127,75,.35),transparent 60%)}
.pg-post--lead .pg-post__title{font-size:clamp(24px,3.2vw,34px);max-width:24ch;letter-spacing:-.025em}
.pg-post--lead .pg-post__title a{color:#fff}
.pg-post--lead .pg-post__title a:hover{color:#cfe0ff}
.pg-post--lead .pg-post__excerpt{color:#cfe1d6;font-size:16.5px;max-width:60ch;-webkit-line-clamp:3}
.pg-post--lead .pg-post__foot{border-color:var(--navy-line)}
.pg-post--lead .pg-post__foot .muted{color:#a4c9b3}
.pg-post--lead .link{color:#fff}
.pg-post--lead .badge{background:rgba(255,255,255,.12);border-color:transparent;color:#fff}
.pg-post--lead:hover{box-shadow:var(--sh-2);border-color:var(--navy)}

.pg-postpage{max-width:760px;margin:0 auto}
.pg-postpage__head{padding:36px 0 22px}
.pg-postpage__head h1{font-size:clamp(30px,4.4vw,44px);line-height:1.1;margin:12px 0 14px}
.pg-postpage__meta{color:var(--muted);font-size:14px;display:flex;gap:6px 14px;flex-wrap:wrap}
.pg-stand{font-size:19px;line-height:1.55;color:var(--text);margin:0 0 28px;padding-left:18px;border-left:3px solid var(--brand)}
.pg-postpage .prose{max-width:none;font-size:17.5px;line-height:1.8}
.pg-postpage .prose p{margin:0 0 1.2em}
.pg-postpage .prose h2{font-size:26px;margin:1.9em 0 .5em}
.pg-postcta{margin:48px 0 0;padding:24px;border-radius:var(--r-lg);background:var(--brand-wash);border:1px solid var(--brand-tint);
  display:flex;gap:16px 24px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.pg-postcta h2{font-size:20px;margin-bottom:4px}
.pg-postcta p{margin:0;color:var(--text)}

/* ---------- errors ---------- */
.pg-err{padding:72px 0 64px;text-align:center}
.pg-err__code{font:800 clamp(72px,14vw,132px)/1 var(--font-display);letter-spacing:-.05em;color:var(--line-2);margin:0 0 4px}
.pg-err h1{font-size:clamp(28px,4vw,40px);margin-bottom:12px}
.pg-err .lede{margin:0 auto 28px}
.pg-err .searchbar{max-width:520px;margin:0 auto 22px;text-align:left}
.pg-err .searchbar .input{flex:1;min-width:0}
.pg-err__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.pg-err__sub{margin-top:26px;color:var(--muted);font-size:14.5px}
.pg-star{color:var(--amber)}
.pg-err--page{min-height:100vh;display:grid;align-items:center}

.pg-help-pull{margin:-8px 0 16px}
