/* Shared finishing details: consistent alignment, readable states, calm spacing. */
.receive-section{
 margin:0 5% 40px;padding:32px 40px;
 border:1px solid var(--line);background:var(--paper);
}
.receive-section h2{font-size:1.25rem;line-height:1.4;margin:0 0 24px;text-align:center}
.receive-section ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;list-style:none;padding:0;margin:0}
.receive-section li{display:flex;align-items:center;justify-content:center;min-height:64px;padding:8px 20px;text-align:center;font-size:.9375rem;line-height:1.6;border-left:1px solid var(--line);color:var(--muted)}
.receive-section li:first-child{border-left:0}
.contact form .status:not(:empty){margin-top:24px;padding:18px 20px;border:1px solid #777;color:var(--paper);font-size:1rem;line-height:1.65}
.footer .details{color:var(--muted)}
@media(max-width:1050px) and (min-width:701px){
 .receive-section{padding:28px 24px}
 .receive-section li{padding:8px 12px;font-size:.875rem}
}
@media(max-width:700px){
 .header{padding:16px 6%;flex-wrap:nowrap;gap:16px}
 .header .logo-image{width:148px;max-width:46%;flex-shrink:1}
 .header .nav{flex-shrink:0}
 .header .nav>.button{width:132px;max-width:132px;min-height:44px;padding:8px;font-size:.6875rem;line-height:1.4;letter-spacing:.025em}
 .receive-section{margin:0 6% 32px;padding:24px 20px}
 .receive-section h2{text-align:left;margin-bottom:16px;font-size:1.125rem}
 .receive-section ul{grid-template-columns:1fr;gap:0}
 .receive-section li{justify-content:flex-start;text-align:left;min-height:0;padding:12px 0;border-left:0;border-top:1px solid var(--line);font-size:.9375rem}
 .receive-section li:last-child{padding-bottom:0}
 .contact form .status:not(:empty){padding:16px;margin-top:20px}
}
@media(max-width:350px){.header{gap:12px}.header .logo-image{width:132px}.header .nav>.button{width:122px;max-width:122px}}

/* Intake fields stay readable at mobile widths and with larger text. */
.contact .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact .form-grid>label{min-width:0}
.contact input,.contact textarea{min-width:0;font-size:1rem;line-height:1.5}
.contact .field-help{display:block;margin-top:8px;color:#b9b9b9;font-size:.8125rem;line-height:1.6;overflow-wrap:break-word}
@media(max-width:700px){.contact .form-grid{grid-template-columns:minmax(0,1fr)}.contact .form-grid>.wide{grid-column:auto}.contact .button{max-width:100%;white-space:normal}}
.choice-group .select-all-choice{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line);font-weight:500}

/* Separate the opportunity explanation from the handoff statement. */
.opportunity-copy .opportunity-divider{width:100%;max-width:480px;align-self:flex-start;border:0;border-top:1px solid var(--line);margin:24px 0;padding:0}
.opportunity-copy .opportunity-divider+.handoff{margin-top:0}

/* Ivory Minimal: the selected desktop and mobile composition. */
.footer.frame-footer{display:block;background:#fafaf8;color:#171717;padding:44px 5% 16px;border-top:1px solid #d5d5d0}
.frame-footer .ff-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.65fr);gap:0}
.frame-footer .ff-grid>*{min-width:0;padding:4px 32px 8px;border:0}
.frame-footer .ff-grid>.ff-brand{padding-left:0;padding-right:32px;text-align:center;border-right:1px solid #d5d5d0}
.frame-footer .ff-grid>.ff-connect{padding-right:0}
.frame-footer .ff-logo{display:block;width:260px;max-width:100%;margin:4px auto 0}
.frame-footer .ff-logo img{display:block;width:100%;height:auto;filter:none}
.frame-footer .ff-brand p{font-size:.8125rem;line-height:1.6;color:#565656;margin:16px 0 0}
.frame-footer .ff-heading{font-size:.6875rem;line-height:1.5;letter-spacing:.14em;font-weight:700;margin:0 0 12px;color:#171717}
.frame-footer .ff-contact>a,.frame-footer .ff-explore>a{display:flex;align-items:center;gap:14px;min-height:44px;padding:6px 0;font-size:.875rem;line-height:1.6;color:#171717}
.frame-footer .ff-contact>a span{min-width:0;overflow-wrap:anywhere}
.frame-footer .ff-contact svg{display:none}
.frame-footer .ff-socials{display:flex;gap:0;flex-wrap:wrap}
.frame-footer .ff-socials>a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#666}
.frame-footer .ff-socials svg{width:20px;height:20px;flex-shrink:0}
.frame-footer .ff-socials>a:hover{color:#171717}
.frame-footer .ff-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #d5d5d0;margin-top:32px;padding-top:10px}
.frame-footer .ff-bottom p{font-size:.75rem;line-height:1.6;margin:0;color:#565656}
.frame-footer .ff-top{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0}
.frame-footer .ff-top svg{width:22px;height:22px}
.frame-footer a:focus-visible{outline:2px solid #171717;outline-offset:4px}
@media(min-width:901px) and (max-width:1200px){.frame-footer .ff-grid>*{padding-left:22px;padding-right:22px}.frame-footer .ff-contact>a,.frame-footer .ff-explore>a{font-size:.8125rem}}
@media(max-width:900px){
 .footer.frame-footer{padding:32px 7% 14px}
 .frame-footer .ff-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .frame-footer .ff-grid>.ff-brand{padding:0 0 24px;border:0}
 .frame-footer .ff-logo{width:210px;max-width:90%;margin:0 auto}
 .frame-footer .ff-brand p{font-size:.75rem;margin-top:12px}
 .frame-footer .ff-grid>.ff-contact{padding:20px 0;border:0;border-top:1px solid #d5d5d0}
 .frame-footer .ff-grid>.ff-explore{padding:20px 0;border:0;border-top:1px solid #d5d5d0}
 .frame-footer .ff-grid>.ff-connect{padding:20px 0 0;border:0;border-top:1px solid #d5d5d0}
 .frame-footer .ff-heading{font-size:.625rem;margin-bottom:8px}
 .frame-footer .ff-contact>a,.frame-footer .ff-explore>a{font-size:.875rem;min-height:44px;padding:6px 0}
 .frame-footer .ff-socials{gap:0}
 .frame-footer .ff-bottom{margin-top:20px;padding-top:8px}
 .frame-footer .ff-bottom p{font-size:.6875rem}
}

/* Reference corrections: dividers, centered brand, hierarchy, and icon alignment. */
@media(min-width:901px){
 .frame-footer .ff-grid>*{border-left:1px solid #d5d5d0}
 .frame-footer .ff-grid>.ff-brand{display:flex;flex-direction:column;justify-content:center;border:0}
 .frame-footer .ff-logo{margin-top:0}
 .frame-footer .ff-contact>a,.frame-footer .ff-explore>a{min-height:36px;padding:4px 0}
}
.frame-footer .ff-heading{margin-bottom:12px}
.frame-footer .ff-socials>a{justify-content:flex-start;padding:0}
.frame-footer .ff-socials svg{margin-left:-2.5px}
@media(max-width:900px){.frame-footer .ff-heading{margin-bottom:12px}}

/* Compact footer rhythm with generous, separate section headings. */
.frame-footer .ff-contact>a,.frame-footer .ff-explore>a{min-height:32px;padding:2px 0}
@media(pointer:coarse){.frame-footer .ff-contact>a,.frame-footer .ff-explore>a{min-height:44px}}

/* Keep the social glyphs aligned with the first footer link row. */
@media(min-width:901px){.frame-footer .ff-socials>a{height:32px}}
@media(min-width:901px) and (pointer:coarse){.frame-footer .ff-socials>a{height:44px}}
/* Shared finishing system across the homepage, journal, and partner intake. */
:root{--surface:#f1f1ec;--section-rule:#d5d5d0;--panel-radius:24px}
.header .logo-image img{object-fit:contain}
.journal h1,.partner-page h1{font-weight:700;letter-spacing:-.035em;line-height:1.25}
.journal h2,.partner-page h2{font-weight:600;letter-spacing:-.025em}
.journal p,.journal li,.partner-intro{line-height:1.75}
.journal img{height:auto}
#process,#faq{background:var(--surface);border:1px solid var(--section-rule);border-radius:var(--panel-radius)}
.contact{border-radius:var(--panel-radius) var(--panel-radius) 0 0}
.journal .related-reading{background:var(--surface);border:1px solid var(--section-rule);border-radius:var(--panel-radius);padding:24px}
.opportunity-copy .opportunity-divider+.handoff{margin-top:0!important}
.partner-progress{position:relative;top:auto}
.application-grid>label{min-width:0}
.application-grid input,.application-grid textarea,.application-grid select{max-width:100%;font-size:1rem;line-height:1.5}
.application-grid .other{margin-top:16px}
.application-grid input:focus-visible,.application-grid textarea:focus-visible,.application-grid select:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.button:disabled{cursor:wait;opacity:.65}
.frame-footer .ff-contact>a:hover,.frame-footer .ff-explore>a:hover{text-decoration:underline;text-underline-offset:4px}
.frame-footer .ff-socials svg{stroke-linecap:round;stroke-linejoin:round}
@media(min-width:901px) and (max-width:1100px){
 .frame-footer .ff-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
 .frame-footer .ff-grid>.ff-explore{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}
 .frame-footer .ff-grid>.ff-connect{border-top:1px solid var(--line);padding-top:24px}
}
@media(max-width:700px){
 .journal,.partner-page{padding-left:6%;padding-right:6%}
 .partner-page h1{font-size:clamp(1.7rem,7vw,2.2rem)}
 .partner-page .eyebrow{font-size:.75rem;letter-spacing:.1em}
 #process,#faq{margin-left:6%;margin-right:6%;padding:28px 20px}
 .frame-footer .ff-contact>a,.frame-footer .ff-explore>a{min-height:44px}
 .frame-footer .ff-heading{font-size:.6875rem}
 .frame-footer .ff-bottom p{max-width:calc(100% - 60px)}
}

/* A stronger opening: useful detail with a more deliberate proportion. */
.hero .hero-copy .hero-description{max-width:460px;line-height:1.7}
.hero .hero-copy .hero-assurance{font-size:.8125rem;line-height:1.65;color:var(--muted);margin:18px 0 0;max-width:100%;animation:none}
@media(min-width:1101px){
 .hero{min-height:clamp(580px,75svh,760px)}
 .hero h1{font-size:clamp(2.6rem,3.6vw,3.5rem);line-height:1.1;margin-bottom:26px}
 .hero-copy{padding:56px 10%}
}
@media(min-width:701px) and (max-width:1100px){
 .hero{min-height:620px}
 .hero h1{font-size:clamp(2rem,3.8vw,2.6rem);line-height:1.12}
 .hero-copy{padding:48px 9%}
}
@media(max-width:700px){
 .hero .hero-copy{min-height:0;justify-content:center;padding:44px 6%}
 .hero .hero-copy .hero-description{margin-bottom:24px;line-height:1.65}
 .hero .hero-copy .hero-assurance{margin:18px 0 0;font-size:.8125rem}
}
/* Benefits explain the handoff, rather than repeating the process numbers. */
.receive-section.receive-static{margin:0 0 40px;padding:44px 5% 48px;background:var(--ink);border:0;border-radius:var(--panel-radius);color:var(--paper)}
.receive-section.receive-static h2{margin:0 0 32px;text-align:left;font-size:clamp(1.5rem,2vw,1.875rem);font-weight:700;line-height:1.25;letter-spacing:-.025em;color:var(--paper)}
.receive-section.receive-static ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0}
.receive-section.receive-static li{display:block;min-height:0;padding:0 24px;text-align:left;border:0;border-left:1px solid #555550;color:var(--paper)}
.receive-section.receive-static li:first-child{border-left:0;padding-left:0}
.receive-section.receive-static li:last-child{padding-right:0}
.receive-section.receive-static h3{font-size:1rem;font-weight:600;line-height:1.5;letter-spacing:-.015em;margin:0 0 12px;color:var(--paper)}
.receive-section.receive-static p{font-size:.875rem;line-height:1.75;margin:0;color:#c8c8c1}
@media(min-width:701px) and (max-width:1100px){
 .receive-section.receive-static ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px}
 .receive-section.receive-static li,.receive-section.receive-static li:first-child,.receive-section.receive-static li:last-child{padding:20px 0 0;border:0;border-top:1px solid #555550}
 .receive-section.receive-static li:last-child{grid-column:1/-1;max-width:460px}
}
@media(max-width:700px){
 .receive-section.receive-static{margin-bottom:32px;padding:32px 6%}
 .receive-section.receive-static h2{font-size:1.5rem;margin-bottom:24px}
 .receive-section.receive-static ul{grid-template-columns:minmax(0,1fr);gap:0}
 .receive-section.receive-static li,.receive-section.receive-static li:first-child,.receive-section.receive-static li:last-child{padding:20px 0;border:0;border-top:1px solid #555550}
 .receive-section.receive-static li:last-child{padding-bottom:0}
 .receive-section.receive-static h3{margin-bottom:8px;font-size:1rem}
 .receive-section.receive-static p{font-size:.9375rem;line-height:1.65}
}

/* Photo-led opening, open editorial sections, and one dark benefits panel. */
main>.hero,main>.opportunity{margin:0;border-radius:0;overflow:visible;max-width:none}
main>.hero{min-height:0}
main>.hero>img{height:calc(100svh - var(--header-height,100px));min-height:0;object-fit:cover;object-position:center;border-radius:0 24px 24px 0}
main>.opportunity>img{border-radius:24px 0 0 24px;object-fit:cover}
main>#services{margin:0;padding:64px 5%;border:0;border-radius:0;background:var(--ink);color:var(--paper)}
#services .section-heading h2,#services .core-card h3{color:var(--paper)}
#services .eyebrow,#services .number,#services .core-card p,#services .core-card:first-child p,#services .core-card:first-child .number{color:#c8c8c1}
#services .core-card,#services .core-card:first-child{color:var(--paper);border-top-color:#555550}
main>#faq{margin:0;max-width:none;padding:56px 5%;border:0;border-radius:0;background:var(--paper);grid-template-columns:minmax(0,1fr);gap:28px}
#faq .faq-intro h2{max-width:none;margin-bottom:0}
#faq .faq-list{width:100%;max-width:none}
#faq details p{max-width:75ch}
main>#process{margin:0;padding:56px 5%;border:0;border-radius:0}
main>.contact{margin:0;padding:48px 5%;border-radius:0}
main>.receive-section.receive-static{margin:48px 5%;border-radius:var(--panel-radius)}
@media(max-width:700px){
 :root{--panel-radius:16px}
 main>.hero>img{height:56svh;min-height:0;border-radius:16px}
 main>.opportunity>img{border-radius:16px}
 main>#services,main>#faq,main>#process{padding:36px 6%}
 main>.contact{padding:32px 6%}
 main>.receive-section.receive-static{margin:32px 6%}
}

/* Framed editorial FAQ, with one clear reading order. */
main>#faq{margin:48px 5%;padding:48px;max-width:none;border:1px solid var(--line);border-radius:0;background:var(--paper);grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:32px 8%;align-items:start}
#faq .faq-intro{display:block;min-width:0}
#faq .faq-intro .eyebrow{margin:0 0 20px}
#faq .faq-intro h2{font-size:clamp(1.7rem,2.8vw,2.4rem);max-width:360px;margin:0 0 20px;line-height:1.2}
#faq .faq-description{font-size:.9375rem;line-height:1.75;color:var(--muted);max-width:330px;margin:0}
#faq .faq-left{grid-column:1;grid-row:1;min-width:0;align-self:start}
#faq .faq-list{display:block;min-width:0;border-top:1px solid var(--line);grid-column:2;grid-row:1}
#faq details{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;background:transparent}
#faq summary{padding:21px 0;gap:24px;font-size:.9375rem;line-height:1.6;font-weight:500;color:var(--ink)}
#faq details p{padding:0 30px 24px 0;margin:0;font-size:.9375rem;line-height:1.8;color:var(--muted)}
#faq .faq-support{border-top:1px solid var(--line);margin-top:32px;padding-top:24px;max-width:330px}
#faq .faq-support h3{font-size:.9375rem;font-weight:600;line-height:1.5;margin:0 0 10px;color:var(--ink)}
#faq .faq-support p{font-size:.875rem;line-height:1.75;margin:0 0 12px;color:var(--muted)}
#faq .faq-contact-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:.8125rem;font-weight:600;text-decoration:underline;text-underline-offset:5px}
#faq .faq-contact-link:hover{text-decoration-thickness:2px}
@media(min-width:701px) and (max-width:1000px){main>#faq{padding:32px;gap:6%;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr)}}
@media(max-width:700px){
 main>#faq{margin:32px 6%;padding:28px 20px;grid-template-columns:minmax(0,1fr);gap:28px}
 #faq .faq-intro h2{max-width:none;font-size:1.75rem;margin-bottom:16px}
 #faq .faq-left{display:contents}
 #faq .faq-intro{grid-column:1;grid-row:1}
 #faq .faq-support{grid-column:1;grid-row:3;margin-top:0;padding-top:20px;max-width:none}
 #faq .faq-list{grid-column:1;grid-row:2}
 #faq .faq-description{max-width:none}
 #faq summary{padding:20px 0}
}

/* Center the benefits within the already centered dark panel. */
.receive-section.receive-static h2{text-align:center}
.receive-section.receive-static li,.receive-section.receive-static li:first-child,.receive-section.receive-static li:last-child{text-align:center;padding-left:24px;padding-right:24px}
.receive-section.receive-static p{max-width:28ch;margin-left:auto;margin-right:auto}
@media(min-width:1101px){
 .receive-section.receive-static h3{min-height:0;display:block;font-size:clamp(.875rem,1vw,1rem);line-height:1.5;margin-bottom:12px}
 .receive-section.receive-static h3 .receive-title-line{display:block;white-space:nowrap}
}
@media(max-width:1100px){
 .receive-section.receive-static li,.receive-section.receive-static li:first-child,.receive-section.receive-static li:last-child{padding-left:0;padding-right:0}
 .receive-section.receive-static li:last-child{max-width:none}
}

/* Mobile spacing: one gutter and a consistent rhythm across all pages. */
@media(max-width:700px){
 :root{--mobile-gutter:clamp(20px,6vw,24px);--mobile-section-gap:32px}
 .header{padding:16px var(--mobile-gutter);gap:12px}
 .hero .hero-copy{padding:40px var(--mobile-gutter)}
 .opportunity .opportunity-copy{padding:40px var(--mobile-gutter)}
 main>#services,main>#process{padding:40px var(--mobile-gutter)}
 main>#faq{margin:var(--mobile-section-gap) var(--mobile-gutter);padding:28px 20px;gap:24px}
 main>.receive-section.receive-static{margin:var(--mobile-section-gap) var(--mobile-gutter);padding:32px 20px}
 main>.contact{padding:40px var(--mobile-gutter);gap:32px}
 .contact .form-grid{gap:20px}
 .contact form>button[type="submit"]{margin-top:24px;width:100%}
 .contact form>.hint{margin-top:20px;margin-bottom:0}
 .contact .field-help{margin-top:8px}
 .footer.frame-footer{padding:32px var(--mobile-gutter) 16px}
 .frame-footer .ff-grid>.ff-contact,.frame-footer .ff-grid>.ff-explore{padding:20px 0}
 .frame-footer .ff-grid>.ff-connect{padding:20px 0 0}
 .frame-footer .ff-bottom{margin-top:24px;padding-top:12px;gap:12px}
 .journal,.partner-page{padding:40px var(--mobile-gutter) 48px}
 .journal .article-card{padding:24px 0}
 .journal .related-reading{margin-top:32px;padding:20px}
 .journal .journal-intro-row{gap:16px;margin-bottom:24px}
 .journal .journal-tools{gap:12px}
 .partner-progress{padding:16px 0}
 .application-step{padding-top:24px}
 .application-step h2{margin-bottom:20px}
 .application-grid{gap:20px}
 .application-grid .other{margin-top:12px}
 .application-actions{gap:12px;margin-top:24px}
}

/* Mobile hero: keep the reassurance compact and remove inherited bottom space. */
@media(max-width:700px){
 .hero .hero-copy{height:auto;min-height:0;justify-content:flex-start;padding:28px var(--mobile-gutter) 24px;gap:0}
 .hero .hero-copy>p.hero-description{margin:0 0 20px;font-size:1rem;line-height:1.6}
 .hero .hero-copy>.button{margin:0;max-width:100%;white-space:normal}
 .hero .hero-copy>p.hero-assurance{font-size:.8125rem;line-height:1.6;margin:14px 0 0;max-width:100%;color:var(--muted)}
}

/* Mobile landing page: clear first screen, deliberate photography, easy actions. */
.hero-mobile-copy{display:none}
@media(max-width:700px){
 .hero-mobile-copy{display:inline}
 .hero-desktop-copy{display:none}
 .home-page .header{padding-top:14px;padding-bottom:14px;gap:16px}
 .home-page .header .logo-image{width:160px;max-width:55%}
 .home-page .header .nav>.button{width:112px;max-width:112px;min-height:48px;padding:10px 12px;font-size:.6875rem;letter-spacing:.04em}
 .hero .hero-copy{padding-top:32px;padding-bottom:24px}
 .hero .hero-copy>.eyebrow{font-size:.6875rem;letter-spacing:.12em;line-height:1.6;margin:0 0 18px}
 .hero h1{font-size:clamp(1.875rem,8.5vw,2.375rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 20px}
 .hero .hero-copy>p.hero-description{font-size:1rem;line-height:1.65;margin-bottom:22px;max-width:34ch}
 .hero .hero-copy>.button{width:100%;min-height:48px;padding:14px 16px;font-size:.8125rem;letter-spacing:.035em}
 .hero .hero-copy>p.hero-assurance{font-size:.75rem;line-height:1.6;margin-top:14px}
 main>.hero>img{height:clamp(230px,68vw,300px);object-position:55% 60%}
 .opportunity{display:flex;flex-direction:column}
 .opportunity .opportunity-copy{order:0;padding-top:36px;padding-bottom:36px}
 .opportunity>img{order:1;height:clamp(230px,68vw,300px);min-height:0;object-fit:cover}
 .opportunity-copy h2{font-size:1.75rem;line-height:1.25;margin-bottom:20px}
 .opportunity-copy .handoff{font-size:1.25rem;line-height:1.5}
 .opportunity-copy .opportunity-divider{margin:20px 0}
 #services .section-heading{margin-bottom:24px}
 #services h2{font-size:1.625rem;line-height:1.25}
 #services .core-card,#services .core-card:first-child{padding-top:20px;padding-bottom:20px}
 #services .core-card p{font-size:.9375rem;line-height:1.7}
 #faq summary{min-height:56px}
 .contact input,.contact textarea{padding:12px;min-height:48px}
 .home-page .frame-footer .ff-socials>a{min-height:48px;width:48px}
}
@media(min-width:380px) and (max-width:700px){
 .receive-section.receive-static ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
 .receive-section.receive-static li,.receive-section.receive-static li:first-child,.receive-section.receive-static li:last-child{padding-top:16px;padding-bottom:0;border-top:1px solid #555550;border-left:0}
 .receive-section.receive-static li:last-child{grid-column:1/-1}
 .receive-section.receive-static h3{font-size:.9375rem;line-height:1.5;margin-bottom:10px}
 .receive-section.receive-static p{font-size:.875rem;line-height:1.65}
}

.frame-footer .ff-hours{margin-top:16px}
.frame-footer .ff-hours h3{font-size:.6875rem;line-height:1.5;font-weight:600;margin:0 0 6px;color:var(--ink)}
.frame-footer .ff-hours p{font-size:.75rem;line-height:1.8;margin:0;color:var(--muted)}

/* Compact mobile footer groups: close related links and icon rows. */
@media(max-width:700px){
 .footer.frame-footer .ff-heading{margin-bottom:10px}
 .footer.frame-footer .ff-contact>a,.footer.frame-footer .ff-explore>a{min-height:32px;padding:0;line-height:1.5;margin:0}
 .footer.frame-footer .ff-socials>a{height:32px;min-height:32px;width:44px}
 .footer.frame-footer .ff-hours{margin-top:12px}
}

/* Legal name and a quiet brand signature below the footer divider. */
.frame-footer .ff-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;column-gap:24px;row-gap:8px;align-items:center}
.frame-footer .ff-note{text-align:right;font-size:.75rem;line-height:1.6;margin:0;color:var(--muted)}
@media(max-width:900px){
 .frame-footer .ff-bottom{grid-template-columns:minmax(0,1fr) 44px;column-gap:16px;row-gap:8px}
 .frame-footer .ff-bottom .ff-copyright{grid-column:1;grid-row:1;max-width:100%}
 .frame-footer .ff-bottom .ff-note{grid-column:1;grid-row:2;text-align:left;max-width:100%;font-size:.6875rem}
 .frame-footer .ff-bottom .ff-top{grid-column:2;grid-row:1/span 2}
}

/* The Frame Standard trial: continuous desktop and mobile motion. */
.frame-standard{display:flex;align-items:center;gap:32px;padding:28px 0 28px 5%;background:var(--ivory,#fafaf8);color:var(--ink,#171717);border-bottom:1px solid var(--line,#d5d5d0);overflow:hidden}
.frame-standard h2{flex:0 0 180px;font-size:.6875rem;font-weight:700;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;margin:0}
.frame-standard-window{flex:1;min-width:0;overflow:hidden}
.frame-standard-track{display:flex;width:max-content;animation:frame-standard-drift 38s linear infinite}
.frame-standard-group{display:flex;align-items:center;justify-content:space-around;flex:none;gap:56px;min-width:calc(95vw - 212px);margin:0;padding:0 28px;list-style:none;box-sizing:border-box}
.frame-standard-group li{display:flex;align-items:center;gap:56px;white-space:nowrap;font-size:.875rem;line-height:1.6;font-weight:500}
.frame-standard-group li::after{content:"";width:4px;height:4px;background:#8b8270;border-radius:50%;flex:none}
@keyframes frame-standard-drift{to{transform:translateX(-50%)}}
@media(max-width:700px){
 .frame-standard{display:block;padding:28px var(--mobile-gutter,6%);text-align:center}
 .frame-standard h2{margin:0 0 16px}
 .frame-standard-window{margin:0 calc(-1 * var(--mobile-gutter,6%))}
 .frame-standard-track{animation-duration:32s}
 .frame-standard-group{min-width:100vw;gap:32px;padding:0 16px}
 .frame-standard-group li{font-size:.75rem;gap:32px}
}
@media(prefers-reduced-motion:reduce){
 .frame-standard-track{animation:none;width:100%}
 .frame-standard-group{flex-wrap:wrap;min-width:0;width:100%;gap:12px 24px}
 .frame-standard-group li{white-space:normal;gap:24px}
 .frame-standard-group[aria-hidden="true"]{display:none}
}

/* About The Frame: quiet editorial layout within the established brand. */
.about-main{padding:56px 5% 48px}
.about-intro{max-width:900px;margin:0 0 48px}
.about-main .eyebrow{font-size:.6875rem;margin:0 0 18px}
.about-intro h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;letter-spacing:-.035em;font-weight:600;margin:0 0 24px}
.about-intro>p:last-child{font-size:1rem;line-height:1.75;max-width:65ch;margin:0}
.about-background{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:32px 8%;padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-main h2{font-size:clamp(1.5rem,2vw,1.875rem);line-height:1.3;font-weight:500;margin:0 0 18px}
.about-story>p,.about-role>p{font-size:.9375rem;line-height:1.75;margin:0 0 16px;max-width:65ch}
.about-role{padding:36px 0;max-width:900px}
.about-role>p:last-child{margin-bottom:0}
.about-next{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:32px;background:var(--ink);color:var(--paper)}
.about-next h2{margin-bottom:10px}
.about-next p{font-size:.9375rem;line-height:1.6;color:#c8c8c1;margin:0}
.about-next .button{flex-shrink:0;background:var(--paper);color:var(--ink);border-color:var(--paper)}
.about-next .button:hover{background:#e8e8e2}
@media(max-width:700px){
 .about-main{padding:36px var(--mobile-gutter,6%) 32px}
 .about-intro{margin-bottom:32px}
 .about-intro h1{font-size:clamp(1.875rem,8vw,2.5rem);margin-bottom:20px}
 .about-background{grid-template-columns:minmax(0,1fr);gap:12px;padding:28px 0}
 .about-role{padding:28px 0}
 .about-next{display:block;padding:24px 20px}
 .about-next .button{width:100%;margin-top:24px}
}

/* About: a centered opening and one editorial reading column. */
.about-main.about-editorial{padding:0 0 48px}
.about-masthead{text-align:center;padding:56px 5% 24px;max-width:1050px;margin:0 auto}
.about-masthead h1{font-size:clamp(2.25rem,5vw,4.25rem);font-weight:600;line-height:1.1;letter-spacing:-.04em;margin:0}
.about-text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:.8125rem;text-decoration:underline;text-underline-offset:5px}
.about-reading{max-width:720px;margin:0 auto 48px;padding:0 24px}
.about-reading>p{font-size:.9375rem;line-height:1.8;margin:0 0 18px}
.about-reading>p.eyebrow{font-size:.6875rem;margin-bottom:16px}
.about-reading h2{font-size:clamp(1.625rem,2.5vw,2rem);margin-bottom:24px}
.about-editorial>.about-next{margin:0 5%}
@media(max-width:700px){
 .about-main.about-editorial{padding-bottom:32px}
 .about-masthead{padding:36px var(--mobile-gutter,6%) 24px}
 .about-masthead h1{font-size:clamp(2rem,9vw,2.75rem);margin-bottom:0}
 .about-reading{padding:0 var(--mobile-gutter,6%);margin-bottom:32px}
 .about-editorial>.about-next{margin:0 var(--mobile-gutter,6%)}
}

/* Contact service hours: a seven-day schedule with today's row highlighted. */
.contact .contact-hours{width:100%;max-width:280px;margin:20px 0;padding:0;background:transparent;color:var(--paper)}
.contact .contact-hours h3{font-size:.8125rem;line-height:1.5;font-weight:600;color:var(--paper);margin:0 0 10px}
.contact .contact-hours dl{padding:0;margin:0;font-size:.75rem;line-height:1.6;color:var(--paper)}
.contact-hours-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:4px 8px;margin:0 -8px}
.contact-hours-row dt,.contact-hours-row dd{margin:0}
.contact-hours-row dd{white-space:nowrap}
.contact-hours-row.is-today{background:#eeeee9;color:var(--ink);font-weight:600}
.contact .contact-hours p.contact-hours-zone{font-size:.625rem;line-height:1.6;color:#c8c8c1;margin:8px 0 0}
@media(max-width:700px){.contact .contact-hours{max-width:280px;margin:20px 0;padding:0}}

.about-editorial .about-reading{border-top:1px solid var(--line);padding-top:32px}
@media(max-width:700px){.about-editorial .about-reading{margin-left:var(--mobile-gutter,6%);margin-right:var(--mobile-gutter,6%);padding-left:0;padding-right:0;padding-top:28px}}

/* About: company purpose and practical client expectations, without repeated process steps. */
.about-expectations{margin-top:36px}
.about-expectations h2{margin-bottom:24px}
.about-standards{margin:0;padding:0}
.about-standards>div{padding:20px 0;border-top:1px solid var(--line)}
.about-standards>div:last-child{padding-bottom:0}
.about-standards dt{font-size:.9375rem;line-height:1.5;font-weight:600;margin:0 0 8px;color:var(--ink)}
.about-standards dd{font-size:.9375rem;line-height:1.75;margin:0;color:var(--muted)}
@media(max-width:700px){.about-expectations{margin-top:28px}.about-expectations h2{margin-bottom:20px}}

/* Dedicated support pages: clear contact choices and a quiet FAQ layout. */
.support-page{max-width:1180px;margin:0 auto;padding:48px 5%}
.support-opening{max-width:760px;margin:0 0 36px}
.support-opening .eyebrow{font-size:.6875rem;margin:0 0 16px}
.support-opening h1{font-size:clamp(2rem,3.6vw,3rem);font-weight:600;line-height:1.15;letter-spacing:-.03em;margin:0 0 18px}
.support-opening>p:last-child{font-size:.9375rem;line-height:1.7;margin:0;color:var(--muted)}
.support-faq{max-width:850px}
.support-faq details{border-top:1px solid var(--line)}
.support-faq details:last-child{border-bottom:1px solid var(--line)}
.support-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;min-height:60px;padding:18px 0;font-size:1rem;line-height:1.5;font-weight:500}
.support-faq summary::-webkit-details-marker{display:none}
.support-faq summary::after{content:'+';font-size:1.25rem;flex:none}
.support-faq details[open]>summary::after{content:'−'}
.support-faq details>p{font-size:.9375rem;line-height:1.75;max-width:70ch;margin:0;padding:0 28px 22px 0}
.support-faq details{scroll-margin-top:24px}
.support-bottom{margin:36px 0 0;padding-top:28px;max-width:850px}
.support-bottom h2{font-size:1.5rem;margin:0 0 12px}
.support-bottom p{font-size:.9375rem;line-height:1.7;margin:0 0 20px}
.contact-support-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px 8%;padding-top:32px;border-top:1px solid var(--line)}
.contact-support-grid h2{font-size:1.375rem;line-height:1.4;margin:0 0 16px}
.support-phone{display:inline-flex;align-items:center;min-height:48px;font-size:1.5rem;line-height:1.4;text-decoration:underline;text-underline-offset:5px}
.support-small{font-size:.75rem;line-height:1.7;color:var(--muted);margin:8px 0 0}
.support-email{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
.contact-direct .contact-hours{max-width:280px;margin:24px 0;color:var(--ink)}
.contact-direct .contact-hours h3{font-size:.8125rem;line-height:1.5;font-weight:600;margin:0 0 10px}
.contact-direct .contact-hours dl{margin:0;padding:0;font-size:.75rem;line-height:1.6;color:var(--muted)}
.contact-direct .contact-hours-zone{font-size:.625rem;line-height:1.6;color:var(--muted);margin:8px 0 0}
.contact-common-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.contact-common-heading>a{font-size:.75rem;line-height:1.5;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.contact-question-links>a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:16px 0;border-top:1px solid var(--line);font-size:.875rem;line-height:1.6}
.contact-question-links>a:last-child{border-bottom:1px solid var(--line)}
.contact-question-links>a:hover,.support-partner:hover{text-decoration:underline;text-underline-offset:4px}
.support-partner{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;font-size:.8125rem;text-decoration:underline;text-underline-offset:4px}
.contact-page-inquiry{margin-top:0}
@media(max-width:700px){
 .support-page{padding:32px var(--mobile-gutter,6%)}
 .support-opening{margin-bottom:28px}
 .support-opening h1{font-size:clamp(1.875rem,8vw,2.5rem)}
 .contact-support-grid{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:24px}
 .contact-common{padding-top:24px;border-top:1px solid var(--line)}
 .contact-common-heading{align-items:flex-start}
 .contact-common-heading h2{font-size:1.25rem}
 .support-faq summary{font-size:.9375rem}
 .support-bottom{margin-top:28px;padding-top:16px}
}

.contact .form-error{display:block;font-size:.75rem;line-height:1.6;color:#f0c9bc;margin-top:6px}
.contact .form-error[hidden]{display:none}
.contact [aria-invalid="true"]{border-color:#f0c9bc}

/* Contact redesign: a calm, light support layout inspired by Proper Cloth. */
.contact-refined{background:var(--paper);color:var(--ink)}
.contact-refined-inner{max-width:1180px;margin:0 auto;padding:48px 5% 56px}
.contact-refined-opening{text-align:center;margin:0 auto 44px;max-width:760px}
.contact-refined-opening .eyebrow{font-size:.6875rem;margin:0 0 16px}
.contact-refined-opening h1{font-size:clamp(2rem,3.6vw,3rem);font-weight:500;line-height:1.2;letter-spacing:-.03em;margin:0 0 16px}
.contact-refined-opening>p:last-child{font-size:.9375rem;line-height:1.7;margin:0;color:var(--muted)}
.contact-support-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px 8%;padding-top:36px;border-top:1px solid var(--line);align-items:start}
.contact-support-layout .contact-direct{grid-column:1;grid-row:1}
.contact-support-layout .contact-common{grid-column:1;grid-row:2}
.contact-support-layout .contact-message-panel{grid-column:2;grid-row:1/span 2}
.contact-support-layout h2{font-size:1.25rem;font-weight:500;line-height:1.4;margin:0 0 20px}
.contact-refined .support-phone{font-size:1.75rem;line-height:1.4;text-decoration:none;min-height:44px}
.contact-refined .support-phone:hover{text-decoration:underline;text-underline-offset:5px}
.contact-refined .support-email{font-size:.8125rem}
.contact-refined .contact-direct .contact-hours{margin:20px 0;max-width:270px}
.contact-refined .contact-common-heading h2{margin-bottom:16px}
.contact-refined .contact-question-links>a{font-size:.8125rem;min-height:48px;padding:12px 0}
.contact-message-panel .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.contact-message-panel .form-grid .wide{grid-column:1/-1}
.contact-message-panel label{display:block;font-size:.8125rem;line-height:1.6;color:var(--ink)}
.contact-message-panel input:not([type="hidden"]),.contact-message-panel textarea{display:block;width:100%;min-width:0;min-height:48px;font:inherit;font-size:1rem;line-height:1.5;padding:12px;border:1px solid #bdbdb7;border-radius:0;background:transparent;color:var(--ink);margin:8px 0 0;box-sizing:border-box}
.contact-message-panel textarea{min-height:160px;resize:vertical}
.contact-message-panel .button{margin-top:24px;min-width:160px}
.contact-message-panel .status{font-size:.8125rem;line-height:1.7;color:var(--ink);margin:16px 0 0}
.contact-message-panel .status:empty{display:none}
.contact-message-panel .form-error{display:block;font-size:.75rem;line-height:1.6;color:#96372c;margin-top:6px}
.contact-message-panel .form-error[hidden]{display:none}
.contact-message-panel [aria-invalid="true"]{border-color:#96372c}
.contact-intake-link{font-size:.75rem;line-height:1.7;margin:20px 0 0;color:var(--muted)}
.contact-intake-link a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){
 .contact-refined-inner{padding:32px var(--mobile-gutter,6%) 40px}
 .contact-refined-opening{margin-bottom:28px}
 .contact-refined-opening h1{font-size:clamp(1.875rem,8vw,2.5rem)}
 .contact-support-layout{display:flex;flex-direction:column;gap:28px;padding-top:24px}
 .contact-support-layout>section{width:100%;min-width:0}
 .contact-support-layout .contact-message-panel{padding-top:24px;border-top:1px solid var(--line)}
 .contact-support-layout .contact-common{padding-top:24px;border-top:1px solid var(--line)}
 .contact-message-panel .form-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .contact-message-panel .button{width:100%;margin-top:20px}
}

/* Compact desktop contact layout: use the available width and reduce scrolling. */
@media(min-width:701px){
 .contact-refined-inner{max-width:none;padding:24px 4% 32px}
 .contact-refined-opening{text-align:left;max-width:none;margin:0 0 24px}
 .contact-refined-opening .eyebrow{margin-bottom:10px}
 .contact-refined-opening h1{font-size:clamp(2rem,2.8vw,2.5rem);margin-bottom:10px}
 .contact-refined-opening>p:last-child{font-size:.875rem}
 .contact-support-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:20px 5%;padding-top:24px}
 .contact-support-layout .contact-message-panel{grid-column:1;grid-row:1/span 2}
 .contact-support-layout .contact-direct{grid-column:2;grid-row:1}
 .contact-support-layout .contact-common{grid-column:2;grid-row:2}
 .contact-support-layout h2{font-size:1.0625rem;margin-bottom:14px}
 .contact-refined .support-phone{font-size:1.5rem;min-height:40px}
 .contact-refined .contact-direct .contact-hours{max-width:250px;margin:16px 0}
 .contact-refined .contact-direct .contact-hours h3{margin-bottom:6px}
 .contact-refined .contact-hours-row{padding-top:3px;padding-bottom:3px}
 .contact-refined .contact-common-heading h2{margin-bottom:12px}
 .contact-refined .contact-question-links>a{min-height:44px;padding:10px 0}
 .contact-refined .support-partner{min-height:40px;margin-top:12px}
 .contact-message-panel .form-grid{gap:16px 20px}
 .contact-message-panel input:not([type="hidden"]),.contact-message-panel textarea{margin-top:6px;padding:10px 12px}
 .contact-message-panel textarea{min-height:120px}
 .contact-message-panel .button{margin-top:20px}
 .contact-intake-link{margin-top:14px}
}
@media(min-width:1200px){
 .contact-support-layout{grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr) minmax(0,.95fr);gap:36px;align-items:start}
 .contact-support-layout .contact-message-panel{grid-column:1;grid-row:1}
 .contact-support-layout .contact-direct{grid-column:2;grid-row:1}
 .contact-support-layout .contact-common{grid-column:3;grid-row:1}
}

/* Contact: calls and hours above FAQs in one compact right column. */
@media(min-width:701px){
 .contact-support-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:20px 5%}
 .contact-support-layout .contact-message-panel{grid-column:1;grid-row:1/span 2}
 .contact-support-layout .contact-direct{grid-column:2;grid-row:1}
 .contact-support-layout .contact-common{grid-column:2;grid-row:2}
 .contact-support-layout .contact-direct .contact-hours{margin-bottom:0}
}
.contact-email-option{font-size:.75rem;line-height:1.7;color:var(--muted);margin:16px 0 0;overflow-wrap:anywhere}
.contact-email-option a{text-decoration:underline;text-underline-offset:4px}
.contact-message-panel .contact-intake-link{margin-top:10px}

/* A lighter footer footprint without tightening its heading and link rhythm. */
.footer.frame-footer{padding-top:36px;padding-bottom:12px}
.frame-footer .ff-bottom{margin-top:24px}
@media(max-width:900px){
 .footer.frame-footer{padding-top:28px;padding-bottom:12px}
 .frame-footer .ff-grid>.ff-brand{padding-bottom:20px}
 .frame-footer .ff-grid>.ff-contact,.frame-footer .ff-grid>.ff-explore{padding-top:18px;padding-bottom:18px}
 .frame-footer .ff-grid>.ff-connect{padding-top:18px}
 .frame-footer .ff-bottom{margin-top:20px}
}

/* Copper-bronze: stronger warm accents on ivory, with cream retained on dark sections. */
:root{--accent-bronze:#964b2d}
.home-page #process .eyebrow,
.home-page #process-heading,
.home-page #process .step-number,
.home-page #faq .eyebrow,
.home-page #faq-heading,
.home-page .opportunity-copy .eyebrow,
.about-masthead .eyebrow,
.about-reading>.eyebrow,
.support-opening .eyebrow,
.faq-page .support-opening h1,
.contact-refined-opening .eyebrow,
.partner-page .eyebrow,
.journal .eyebrow{color:var(--accent-bronze)}
.header .navlink:hover,
.frame-footer .ff-contact>a:hover,
.frame-footer .ff-explore>a:hover,
.frame-footer .ff-socials>a:hover,
.contact-refined a:not(.button):hover,
.faq-page .support-page a:not(.button):hover,
.journal a:not(.button):hover{color:var(--accent-bronze);text-decoration:underline;text-underline-offset:4px}
.home-page #faq summary:hover,
.faq-page .support-faq summary:hover{color:var(--accent-bronze)}

/* Article next steps: one inquiry action, with quiet follow and partner links. */
.journal .article-contact{margin-top:36px;padding:28px 0 0;border-top:1px solid var(--line)}
.journal .article-contact h2{margin-top:0;font-size:1.375rem}
.journal .article-contact .button{margin:8px 0 12px}
.journal .article-contact .article-follow,.journal .article-contact .article-partner-note{font-size:.8125rem;line-height:1.7;color:var(--muted)}
.journal .article-contact a:not(.button){text-decoration:underline;text-underline-offset:4px}

.partner-page .required-note{font-size:.8125rem;margin:20px 0 16px;color:var(--muted)}
.partner-page .required-marker{color:var(--ink);font-weight:600}

/* Defined FAQ cards on the homepage: quiet blocks with a clear open state. */
.home-page #faq{border:0;padding:40px 0;background:transparent;gap:32px 6%}
.home-page #faq .faq-list{display:grid;gap:10px;border-top:0}
.home-page #faq details{background:#fffdf8;border:1px solid var(--line);border-radius:6px;padding:0;overflow:hidden}
.home-page #faq summary{padding:20px 22px;font-weight:500}
.home-page #faq details p{padding:0 22px 22px;margin:0}
.home-page #faq details[open]{border-color:var(--woodland);background:var(--surface)}
.home-page #faq details[open] summary{color:var(--ink)}

/* About: a strong opening, an open story column and a contrasting standards panel. */
.about-main.about-editorial{max-width:1320px;margin:0 auto;padding:48px 5% 56px}
.about-editorial .about-masthead{margin:0 0 40px;padding:0 0 36px;border-bottom:1px solid var(--line);text-align:left}
.about-editorial .about-masthead h1{font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.1;margin:0;max-width:760px;color:var(--ink)}
.about-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:40px}
.about-editorial .about-reading{max-width:none;margin:0;padding:16px 0;border:0}
.about-editorial .about-reading h2{font-size:clamp(1.5rem,2.5vw,2rem);margin:0 0 24px}
.about-editorial .about-reading p{max-width:520px}
.about-editorial .about-expectations{margin:0;padding:32px;background:var(--ink);color:var(--paper);border:0;border-radius:8px}
.about-expectations h2{color:var(--paper);margin:0 0 24px;font-size:1.375rem}
.about-expectations .about-standards{margin:0}
.about-expectations .about-standards>div{padding:20px 0;border-top:1px solid var(--woodland)}
.about-expectations .about-standards>div:first-child{padding-top:0;border:0}
.about-expectations .about-standards dt{color:var(--paper)}
.about-expectations .about-standards dd{color:var(--marble);font-size:.9375rem}
.about-editorial .about-next{background:var(--surface);color:var(--ink);border-radius:8px;padding:32px;gap:24px}
.about-editorial .about-next h2{color:var(--ink)}
.about-editorial .about-next p{color:var(--muted)}
.about-editorial .about-next .button{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.about-editorial .about-next .button:hover{background:var(--woodland);border-color:var(--woodland)}

/* FAQ page: grouped questions with separate headings and card backgrounds. */
.faq-page .support-page{max-width:1320px;margin:0 auto;padding:48px 5% 56px}
.faq-page .support-opening{max-width:none;margin:0 0 36px;padding-bottom:32px;border-bottom:1px solid var(--line)}
.faq-page .support-opening h1{font-size:clamp(2.25rem,4vw,3.5rem);color:var(--ink)}
.faq-groups{display:grid;gap:28px}
.faq-group{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:40px;align-items:start;padding:28px;background:var(--surface);border-radius:8px}
.faq-group-heading h2{font-size:1.25rem;margin:4px 0 10px;color:var(--ink)}
.faq-group-heading p{font-size:.875rem;margin:0}
.faq-page .faq-group .support-faq{margin:0;display:grid;gap:10px;border:0}
.faq-page .faq-group details{margin:0;padding:0;background:#fffdf8;border:1px solid var(--line);border-radius:5px;overflow:hidden}
.faq-page .faq-group summary{padding:18px 20px;min-height:56px;font-size:.9375rem}
.faq-page .faq-group details p{padding:0 20px 20px;margin:0;font-size:.9375rem}
.faq-page .faq-group details[open]{border-color:var(--woodland)}
.faq-page .support-bottom{margin:36px 0 0;padding:28px 0 0;border-top:1px solid var(--line)}

/* Dedicated services page. */
.services-page{max-width:1320px;margin:0 auto;padding:48px 5% 56px}
.services-opening{display:block;border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:32px}
.services-opening h1{font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.1;margin:0 0 24px;letter-spacing:-.035em}
.services-opening>p:last-child{max-width:640px;margin:0}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.service-detail{background:var(--ink);color:var(--paper);padding:32px;border-radius:8px}
.service-number{display:block;color:var(--sand);font-size:.75rem;letter-spacing:.12em;margin-bottom:20px}
.service-detail h2{font-size:1.625rem;margin:0 0 16px;color:var(--paper)}
.service-detail p{font-size:.9375rem;line-height:1.75;color:var(--marble);margin:0}
.service-detail .service-lead{font-size:1rem;color:var(--paper);margin-bottom:16px}
.services-handoff{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:40px;margin:40px 0;padding:32px;background:var(--surface);border-radius:8px}
.services-handoff h2{font-size:1.625rem;margin:0}
.services-handoff ol{margin:0;padding-left:22px}
.services-handoff li{padding:0 0 16px 8px;font-size:.9375rem;line-height:1.75;color:var(--muted)}
.services-handoff li:last-child{padding-bottom:0}
.services-handoff strong{color:var(--ink)}
.services-next{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:32px;border-top:1px solid var(--line)}
.services-next h2{margin:0 0 12px;font-size:1.5rem}
.services-next p{margin:0}
.services-next .button{flex-shrink:0}
.services-question{font-size:.8125rem;margin-top:24px}
.services-question a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){
 .home-page #faq{padding:12px 0;gap:24px}
 .home-page #faq summary{padding:18px}
 .home-page #faq details p{padding:0 18px 18px}
 .about-main.about-editorial,.faq-page .support-page,.services-page{padding:32px 6% 40px}
 .about-editorial .about-masthead{padding-bottom:24px;margin-bottom:24px}
 .about-story-grid,.faq-group,.services-handoff{grid-template-columns:minmax(0,1fr);gap:24px}
 .about-story-grid{margin-bottom:28px}
 .about-editorial .about-expectations,.about-editorial .about-next,.faq-group,.service-detail,.services-handoff{padding:24px}
 .about-editorial .about-next,.services-next{flex-direction:column;align-items:flex-start;gap:24px}
 .about-editorial .about-next .button,.services-next .button{width:100%}
 .faq-group{gap:18px;padding:20px}
 .service-detail-grid{grid-template-columns:minmax(0,1fr)}
}

.form-privacy{font-size:.75rem;line-height:1.7;margin:0 0 20px;color:var(--muted)}
.form-privacy a{text-decoration:underline;text-underline-offset:4px}
.contact .form-privacy,.contact .form-privacy a{color:var(--marble)}
.frame-footer .ff-explore .footer-privacy{font-size:.75rem;margin-top:10px}
.privacy-page{max-width:900px;margin:0 auto;padding:48px 6% 56px}
.privacy-page header{padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:32px}
.privacy-page h1{font-size:clamp(2rem,4vw,3rem);line-height:1.2;margin:0 0 16px}
.privacy-page .privacy-date{font-size:.8125rem;margin:0}
.privacy-page section{margin:28px 0}
.privacy-page h2{font-size:1.25rem;margin:0 0 14px}
.privacy-page p{font-size:.9375rem;line-height:1.8}
.privacy-page a{text-decoration:underline;text-underline-offset:4px}
@media(min-width:701px) and (max-width:1050px){.header .nav{gap:16px}.header .navlink{font-size:.8125rem}}

/* Keep the call heading closely connected to its phone link. */
.contact-refined .contact-direct #call-heading{margin-bottom:4px}
.contact-refined .contact-direct .support-phone{margin-top:0;min-height:44px;padding:0;align-items:flex-start;line-height:1.3}

.contact-refined .contact-channel-note{font-size:.6875rem;line-height:1.7;letter-spacing:.02em;margin:4px 0 0;color:var(--muted)}
.contact-channel-note span{padding:0 5px}

/* A full-width vertical contact block with clear separation. */
.contact-refined .contact-direct{display:block}
.contact-refined .contact-direct .support-phone{display:flex;width:max-content;max-width:100%;white-space:nowrap;min-height:44px;align-items:center;font-size:clamp(1.5rem,2vw,1.875rem)}
.contact-refined .contact-direct .contact-channel-note{max-width:none;margin-top:4px}
.contact-refined .contact-direct .contact-hours{width:100%;max-width:none;margin:22px 0 0;padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}
.contact-refined .contact-direct .contact-hours h3{margin:0 0 12px}
.contact-refined .contact-direct .contact-hours-row{margin:0;padding:5px 10px}
.contact-refined .contact-direct .contact-hours-zone{margin-top:10px}

/* Compact call and hours rhythm. */
.contact-refined .contact-direct .support-phone{font-size:1.5rem;min-height:36px}
.contact-refined .contact-direct .contact-channel-note{margin-top:2px}
.contact-refined .contact-direct .contact-hours{margin-top:14px;padding-top:14px}
.contact-refined .contact-direct .contact-hours h3{margin-bottom:8px}
.contact-refined .contact-direct .contact-hours-row{padding:3px 8px}
.contact-refined .contact-direct .contact-hours-zone{margin-top:6px}
.contact-refined .contact-support-layout{row-gap:20px}
@media(pointer:coarse){.contact-refined .contact-direct .support-phone{min-height:44px}}

/* A quiet vacancy example within the existing opportunity copy. */
.opportunity-copy .vacancy-note{font-size:.8125rem;line-height:1.6;margin:18px 0 0}
.vacancy-note a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.vacancy-note .vacancy-example{display:block;font-size:.6875rem;color:var(--muted);margin-top:5px}

/* Small mobile pause between the opportunity image and Core 4. */
@media(max-width:700px){
 .home-page main>#services{margin-top:20px}
 .receive-section.receive-static p{font-size:.875rem;line-height:1.6}
}
