/* User-supplied WF Visual Sans: Text for reading and controls; Deck Bold for headlines. */
@font-face{font-family:'WF Visual Sans Text';src:url('fonts/wf-visual-sans-text-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'WF Visual Sans Text';src:url('fonts/wf-visual-sans-text-medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'WF Visual Sans Text';src:url('fonts/wf-visual-sans-text-semibold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'WF Visual Sans Text';src:url('fonts/wf-visual-sans-text-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'WF Visual Sans Deck';src:url('fonts/wf-visual-sans-deck-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'Yellowtail';src:url('fonts/yellowtail-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--body-font:'WF Visual Sans Text',Arial,sans-serif;--heading-font:'WF Visual Sans Deck',Arial,sans-serif;--medal-font:'WF Visual Sans Text',Arial,sans-serif}
/* A low-specificity family rule also reaches legacy component shorthands and native controls. */
:where(body,body *){font-family:var(--body-font)!important}
body,input,textarea,select,option,button,pre,.sg-root,.sg-root input,.sg-root textarea,.sg-root select{font-family:var(--body-font);font-style:normal}
body{font-weight:400}
.mobile-menu a{font-family:var(--body-font);font-weight:400}
/* The requested headline tracking is zero at every size. */
/* These two declarations enforce the requested type roles across every shared component. */
h1,h2,h3,h4,h5,h6{font-family:var(--heading-font)!important;font-weight:700!important;font-style:normal!important;font-synthesis:none;text-transform:none!important;letter-spacing:0!important;word-spacing:normal}
:is(h1,h2,h3,h4,h5,h6) :where(em,span,strong,b){font-family:inherit!important;font-weight:inherit!important;font-style:normal!important;letter-spacing:inherit!important;word-spacing:inherit!important;text-transform:inherit!important}
button,[role='button'],.pill,.hero-action,.underlink,.arrival-links>a,.footer-invite>a,.site-header a[href='contact.html'],.header-talk,.menu-secondary{font-family:var(--body-font)!important;font-weight:700!important;font-style:normal;font-synthesis:none}
button :where(span,strong,b,em){font-family:inherit!important;font-weight:inherit!important}
/* Keep testimonials and conversation text in the body face. */
.laura-quote>p,.homeowner-voice blockquote,.homeowner-voice blockquote p,.brief-sample,.sg-invitation>p:not(.sg-kicker),.sg-next-question{font-family:var(--body-font);font-weight:400;font-style:normal}
.feedback-title strong,.process-roles strong,.years-mark>strong,.process-number{font-family:var(--heading-font)!important;font-weight:700!important;letter-spacing:0!important}
.sg-root .sg-intro p,.sg-root .sg-brief,.pe-brief,.pe-local-note{font-family:var(--body-font)}
.sg-root .sg-character-label{font-family:var(--body-font)!important}
em{font-family:inherit;font-weight:inherit;font-style:normal}
.sr-awards time{font-family:var(--body-font)}
.years-mark>strong>span{font-family:inherit}
/* Keep the smallest control labels readable. */
.eyebrow,.sg-kicker{font-size:11px;letter-spacing:.10em}
.underlink,.pill,.header-nav,.hero-action{font-size:14px}
.photo-open-label,.sr-person figcaption>span,.footer-meta,.tool-launch small,.pe-local-note,.pe-brief-limit{font-size:12px}
.pe-field input,.pe-field textarea,.pe-field select,.tool-launch select,.sg-root input,.sg-root textarea,.sg-root select{font-family:var(--body-font);font-size:16px;line-height:1.5}
.pe-progress button{font-size:11px}
@media(max-width:700px){.pe-intro>p:not(.eyebrow){font-size:15px}.pe-intro>.eyebrow,.pe-benefits{font-size:10px}}
@media(max-width:700px){.page-heading h1{font-size:clamp(40px,7vw,48px);line-height:1.04}}
@media print{
 body.pe-printing>.pe-print-sheet,body.pe-printing .pe-print-sheet pre,body.sg-printing>.sg-print,body.sg-printing .sg-print pre{font-family:var(--body-font)}
 body.pe-printing .pe-print-sheet h1,body.sg-printing .sg-print h1{font-family:var(--heading-font)}
}

.arrival-copy blockquote{font-family:var(--body-font);font-weight:400}

/* Photo actions must stay readable despite older, more specific mobile rules. */
.photo-open .photo-open-label{font-size:12px!important;line-height:1.4}
.project-card p{font-size:12px}
.contact-form .demo-note{font-size:12px;line-height:1.5}

.feedback-title strong,.process-roles strong{text-transform:none!important;letter-spacing:0!important}

.eyebrow,.sg-kicker,.ar-caption-label,.ar-navigation-label,.ar-record-count{font-family:var(--body-font)!important;font-weight:500!important}
label,.sr-person figcaption,.arrival-author,.ar-origin-note>strong{font-family:var(--body-font)!important}
.photo-story-popover .photo-story-title{font-family:var(--heading-font)!important;font-weight:700!important;letter-spacing:0!important}

/* Normal source capitalization; only eyebrows and primary actions use uppercase. */
.eyebrow,.sg-kicker{text-transform:uppercase!important}
.chapter,.project-intro .project-meta strong,.ar-caption-label,.ar-mobile-archive figcaption{text-transform:none!important}
.pill,.hero-action{text-transform:uppercase}
.site-header,.site-header a,.site-header button,.mobile-menu,.mobile-menu a{text-transform:none!important}

/* The round badge uses the same real fonts as the wall years and site copy. */
.sr-anniversary-art{overflow:visible}
.sr-anniversary-art text{fill:#03153b;text-anchor:middle;font-family:var(--body-font)!important;font-weight:700!important;font-synthesis:none;letter-spacing:0;word-spacing:normal;font-variant-numeric:normal}
.sr-anniversary-art .sr-anniversary-number{font-family:var(--heading-font)!important;font-size:385px;letter-spacing:-10px}

.sr-anniversary-art .sr-anniversary-since,.sr-anniversary-art .sr-anniversary-motto,.sr-anniversary-art .sr-anniversary-years{font-size:44px;letter-spacing:0;word-spacing:normal;font-kerning:normal}
