@charset "UTF-8";
:root{--navy:#064776;--paper:#ffffff;--ink:#002333;--red:#03718d;--gold:#03718d;--muted:#555a62;--line:#c7d9de;--white:#ffffff;color-scheme:light;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #245de8;outline-offset:5px}::selection{background:#ccebf0;color:var(--navy)}.wrap{width:min(1220px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;left:1rem;top:-5rem;z-index:10;padding:1rem;background:white}.skip:focus{top:1rem}.site-header{display:flex;justify-content:space-between;align-items:center;min-height:106px;border-bottom:1px solid var(--line);gap:2rem}.wordmark{text-decoration:none;font-size:.88rem;letter-spacing:.1em;font-weight:700;line-height:1.5}.wordmark span{font-family:Georgia,serif;font-style:italic;font-size:1.1rem;color:var(--red);margin-inline:.15em}.site-header nav{display:flex;gap:2rem;align-items:center;font-size:.9rem}.site-header nav a{text-decoration:none}.site-header nav a:hover,.text-link:hover,footer a:hover{text-decoration:underline;text-underline-offset:.3em}.site-header nav span{color:var(--red);margin-left:.4rem}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center;padding-block:76px 80px}.eyebrow{display:flex;align-items:center;gap:.8rem;font-size:.76rem;letter-spacing:.16em;font-weight:700;line-height:1.6;margin:0 0 1.5rem}.rule{width:28px;height:2px;background:var(--red);display:inline-block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:700}h1{font-size:clamp(4rem,6.8vw,6.7rem);letter-spacing:-.045em;line-height:.99;margin:0 0 1.8rem}h1 em{font-size:.5em;letter-spacing:-.04em;color:var(--red)}.period{color:var(--red)}.subtitle{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.45rem,2.3vw,1.85rem);line-height:1.3;letter-spacing:-.015em;margin-bottom:1.6rem}.hero-description{font-size:1.075rem;line-height:1.75;max-width:32rem;color:#405966;margin-bottom:1.9rem}.actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.1rem;text-decoration:none;padding:1rem 1.35rem;font-size:.94rem;font-weight:700;line-height:1.5;border:1px solid transparent;min-height:52px;transition:background .15s,color .15s,transform .15s}.button.primary{background:#005d6e;color:var(--white)}.button.primary:hover{background:#064776;transform:translateY(-1px)}.button span{font-size:1.2rem;font-weight:400}.text-link{font-size:.93rem;font-weight:700;text-underline-offset:6px;line-height:1.7}.text-link span{margin-left:.3rem}.quiet{font-size:.875rem;line-height:1.65;color:var(--muted)}.hero-note{margin:1.25rem 0 0}.hero-art{margin:0;min-width:0;position:relative;padding:0 1.2rem}.cover-window{aspect-ratio:506/736;position:relative;overflow:hidden;background:#ddcba4;box-shadow:0 20px 40px -30px #18243566;max-width:420px;margin:auto}.cover-window img{position:absolute;width:140.12%;height:auto;max-width:none;left:-20.16%;top:-37.64%;display:block}.hero-art figcaption{font-family:Georgia,'Times New Roman',serif;font-style:italic;text-align:center;line-height:1.5;font-size:.95rem;margin:1.4rem 0 0;color:#555a62}.inside{background:#f3f4f5;color:var(--ink);padding-block:78px 64px}.inside .eyebrow{color:#03718d}.inside-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}h2{font-size:clamp(2.35rem,3.3vw,3.3rem);line-height:1.13;letter-spacing:-.035em;margin-bottom:1.5rem}.inside-copy p{font-size:1.02rem;line-height:1.8;color:#405966;margin-bottom:1.2rem}.inside-copy .invitation{color:#005d6e;font-family:Georgia,'Times New Roman',serif;font-size:1.25rem;line-height:1.5;margin-bottom:0}cite{font-style:italic}.themes{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:3.5rem;border-top:1px solid var(--line);padding-top:2.2rem}.chapter-number{font-size:.75rem;letter-spacing:.12em;color:#005d6e;display:block;margin-bottom:1.1rem;line-height:1.7}.themes h3{font-size:1.5rem;line-height:1.3;margin-bottom:.8rem}.themes p{font-size:.97rem;line-height:1.7;color:#405966;margin-bottom:0}.bulk{padding-block:94px;display:grid;grid-template-columns:1fr 1.08fr;gap:8%}.bulk .eyebrow{color:var(--red)}.bulk-copy>p{line-height:1.8;color:#4e5962;max-width:28rem}.price{display:flex;align-items:center;gap:1rem;margin:1.8rem 0;padding-block:1.3rem;border-block:1px solid var(--line);line-height:1.5}.dollars{font-family:Georgia,'Times New Roman',serif;font-size:4.5rem;letter-spacing:-.04em;line-height:1;color:var(--red)}.price>div{font-weight:700}.price>div span{display:block;font-size:.91rem;font-weight:400;color:#54606b}.delivery-note{border-left:3px solid var(--gold);padding-left:1.25rem;margin-top:2rem}.delivery-note h3{font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:700;line-height:1.4;margin-bottom:.5rem}.delivery-note p{font-size:.91rem;line-height:1.75;color:#54606b;margin:0}.inquiry{background:var(--white);border:1px solid var(--line);padding:2rem;align-self:start}.inquiry>.eyebrow{margin-bottom:.5rem}.inquiry h3{font-size:1.8rem;line-height:1.3;margin-bottom:.65rem}.form-intro{color:#54606b;font-size:.93rem;line-height:1.6;margin-bottom:1.6rem}.field{margin-bottom:1.1rem;min-width:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}label{display:block;font-size:.875rem;font-weight:700;line-height:1.5;margin-bottom:.45rem}label span{font-weight:400;color:var(--muted)}input,textarea{border:1px solid #c4c5bd;background:white;color:var(--ink);border-radius:0;width:100%;padding:.8rem;min-height:48px;font-size:1rem;line-height:1.4}textarea{resize:vertical}input:hover,textarea:hover{border-color:#78818a}::placeholder{color:#727980;opacity:1}.estimate{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.4rem;padding:1rem 0 1.2rem;margin:-.1rem 0 1rem;border-bottom:1px solid var(--line);font-size:.92rem}.estimate strong{font-size:1.2rem}.estimate small{flex-basis:100%;font-size:.82rem;color:var(--muted);line-height:1.6}.privacy-note{font-size:.82rem;color:var(--muted);line-height:1.65;margin:0 0 1.25rem}.inquiry>.button{width:100%}.email-preview{border-top:1px solid var(--line);padding-top:1.4rem;margin-top:1.5rem}.email-preview[hidden]{display:none}.email-preview p{line-height:1.6}.email-preview .button{width:100%}.copy-button{display:block;background:none;border:0;color:var(--ink);text-decoration:underline;text-underline-offset:.25rem;padding:1rem 0;min-height:48px;font-weight:700;font-size:.91rem}.email-preview textarea{font-size:.91rem}.email-preview .quiet{margin:.7rem 0 0;overflow-wrap:anywhere}.closing{background:#e0f2f5;text-align:center;padding-block:68px}.closing .eyebrow{display:block;color:var(--red);margin-bottom:1rem}.closing h2{font-size:clamp(2.4rem,4.2vw,4rem);margin-bottom:1rem}.closing p:not(.eyebrow){color:#405966;line-height:1.7;margin-bottom:1.5rem}.button.light{border-color:var(--navy);background:transparent}.button.light:hover{background:#005d6e;color:var(--white)}footer{padding-block:2rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;font-size:.875rem;color:var(--muted)}footer p{margin:0;line-height:1.6}footer .wordmark{color:var(--ink)}footer>a:last-child{text-underline-offset:4px}
@media(min-width:1500px){.hero{padding-block:90px}.hero-art{padding-inline:2rem}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:4%;padding-block:60px}.hero-art{padding:0}.actions{gap:1rem}.bulk{gap:5%}.inquiry{padding:1.5rem}.field-row{grid-template-columns:1fr}.themes{gap:1.7rem}.inside-grid{gap:5%}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{min-height:80px;gap:1rem}.site-header nav{gap:1rem}.site-header nav a:first-child{display:none}.wordmark{font-size:.76rem;letter-spacing:.07em}.site-header nav a{font-size:.85rem}.hero{grid-template-columns:1fr;padding-block:40px 44px;gap:36px}.hero-copy{max-width:550px}h1{font-size:clamp(3.7rem,13vw,5.5rem)}.hero .eyebrow{font-size:.73rem;margin-bottom:1.4rem}.subtitle{font-size:1.5rem}.hero-description{font-size:1rem;line-height:1.75}.hero-art{width:min(85%,350px);margin:auto}.hero-art figcaption{font-size:.875rem}.inside{padding-block:48px}.inside-grid{grid-template-columns:1fr;gap:.6rem}.themes{grid-template-columns:1fr;gap:1.8rem;margin-top:2rem;padding-top:2rem}.themes article{max-width:32rem}.chapter-number{margin-bottom:.6rem}.themes h3{margin-bottom:.5rem}.bulk{padding-block:52px;grid-template-columns:1fr;gap:2.5rem}.bulk-copy>p{max-width:none}.inquiry{padding:1.4rem}.field-row{grid-template-columns:1fr}.closing{padding-block:48px}.closing h2{font-size:2.4rem}footer{display:grid;gap:.85rem;padding-block:1.6rem}.price{margin:1.5rem 0}.actions .button{font-size:.9rem;padding-inline:1rem}.delivery-note p{font-size:.94rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* OF&F website brand: existing blue, teal, white and pale-aqua surfaces. */
h1,h2,h3{color:var(--navy)}
.site-header{min-height:145px;gap:2rem;border-bottom:1px solid #6b9aa8;padding-block:.7rem}
.brand-logo{display:block;flex-shrink:0;line-height:0}
.brand-logo img{width:88px;height:auto;display:block}
.site-header nav{justify-content:flex-end;flex-wrap:wrap;gap:.8rem 1.8rem;font-family:Georgia,'Times New Roman',serif;font-size:1rem;color:var(--muted)}
.site-header nav a{padding:.55rem 0;line-height:1.4}
.site-header nav [aria-current=page]{color:var(--navy);text-decoration:underline;text-underline-offset:.35rem}
.site-header nav .nav-inquiry{font-family:Arial,Helvetica,sans-serif;border:1px solid #005d6e;padding:.8rem 1.15rem;color:#005d6e}
.site-header nav .nav-inquiry:hover{background:#005d6e;color:white;text-decoration:none}
.hero{padding-block:64px 76px}
.eyebrow,.chapter-number{font-size:.875rem;letter-spacing:.11em}
.hero .eyebrow{color:#005d6e}
.subtitle{color:#03718d;font-weight:700;margin-bottom:1rem}
.author{font-size:1rem;letter-spacing:.04em;color:#405966;margin-bottom:1.5rem}
.hero-note a{display:inline-block;margin-left:.4rem;text-underline-offset:.2em;color:#005d6e}
.themes article{border:1px solid #c7d9de;border-radius:6px;background:white;padding:1.5rem}
.themes{gap:1.5rem}
.inquiry{border-color:#6b9aa8;border-radius:6px;background:#f8fafb}
.estimate small,.privacy-note{font-size:.875rem}
.site-footer{display:block;background:#f3f4f5;padding-block:3rem;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:2.5rem;align-items:center}
.site-footer h2{font-size:1.55rem;letter-spacing:-.02em;margin-bottom:.7rem;line-height:1.3;color:#002333}
.footer-mission p{max-width:38rem;font-size:1rem;line-height:1.7;margin:0}
.footer-mission .copyright{font-size:.875rem;margin-top:.9rem}
.site-footer nav{display:flex;flex-direction:column;gap:1rem;font-size:.94rem;line-height:1.5;color:#005d6e}
.site-footer nav a{text-underline-offset:.25rem}
@media(max-width:1000px){.site-header nav{gap:.6rem 1rem}.footer-grid{gap:1.5rem;grid-template-columns:80px 1fr}.site-footer nav{grid-column:2;flex-direction:row;flex-wrap:wrap}.brand-logo img{width:80px}}
@media(max-width:700px){.site-header{display:grid;grid-template-columns:1fr;gap:.7rem;padding-block:1rem;min-height:0}.site-header>.brand-logo{justify-self:center}.brand-logo img{width:70px}.site-header nav{justify-content:center;gap:.25rem 1rem;font-size:.94rem}.site-header nav a:first-child{display:inline-block}.site-header nav a{font-size:.94rem;min-height:44px;display:inline-flex;align-items:center}.site-header nav .nav-inquiry{padding:.5rem .85rem}.hero{padding-block:36px 44px}.hero .eyebrow{font-size:.875rem;letter-spacing:.08em}h1{font-size:clamp(3.55rem,13vw,5.5rem)}.themes{gap:1rem}.footer-grid{grid-template-columns:1fr;gap:1.25rem}.site-footer .brand-logo{justify-self:start}.site-footer nav{grid-column:auto;gap:.75rem 1.5rem}.site-footer{padding-block:2rem}.footer-mission p{font-size:.94rem}}
