/*
Theme Name: Fareedom of Work
Theme URI: https://fareedomofwork.com/
Author: Fareedom of Work
Description: A fast, bespoke conversion-first theme for Fareedom of Work.
Version: 1.0.1
Text Domain: fareedom-of-work
*/

:root { --ink:#061018; --ink-2:#0b202a; --cyan:#16bdf3; --cyan-soft:#a6e9ff; --paper:#f4f8fa; --white:#fff; --muted:#52636a; --line:#c8d8df; --shadow:0 24px 72px rgba(2,18,27,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; background:var(--ink); color:var(--white); font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height:1.5; text-rendering:optimizeLegibility; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; height:auto; }
button,input,textarea,select { font:inherit; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
.skip-link { position:absolute; left:-9999px; top:auto; z-index:200; background:#fff; color:#000; padding:12px 16px; font-weight:800; }
.skip-link:focus { left:14px; top:14px; }
.fow-shell { width:min(1240px, calc(100% - 48px)); margin:auto; }
.fow-header { position:sticky; top:0; z-index:100; background:rgba(255,255,255,.96); color:#0b1a21; backdrop-filter:blur(18px); border-top:4px solid var(--ink); border-bottom:1px solid rgba(4,26,37,.12); }
.fow-header__inner { min-height:78px; display:grid; grid-template-columns:190px 1fr auto; gap:26px; align-items:center; }
.fow-brand { display:flex; flex-direction:column; line-height:1; letter-spacing:-.06em; font-size:22px; font-weight:900; }
.fow-brand span { margin-top:5px; color:#307891; font-size:8px; letter-spacing:.18em; text-transform:uppercase; }
.fow-nav { display:flex; justify-content:center; gap:clamp(15px,2.6vw,34px); font-size:12px; font-weight:750; }
.fow-nav a { position:relative; padding:12px 0; }
.fow-nav a:after { content:""; position:absolute; left:0; bottom:7px; width:0; height:2px; background:var(--cyan); transition:width .22s ease; }
.fow-nav a:hover:after,.fow-nav a:focus-visible:after { width:100%; }
.fow-header__cta,.fow-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; min-height:49px; padding:14px 17px; border:1px solid transparent; font-size:13px; font-weight:850; letter-spacing:.01em; transition:transform .2s ease, background .2s ease, color .2s ease; }
.fow-header__cta,.fow-button--cyan { background:var(--cyan); color:#00141c; }
.fow-header__cta:hover,.fow-button:hover { transform:translateY(-3px); background:var(--cyan-soft); }
.fow-button--ghost { border-color:rgba(255,255,255,.48); color:#fff; }
.fow-button--ghost:hover { background:#fff; color:#071017; }
.fow-button--dark { background:#08141a; color:#fff; }
.fow-button--dark:hover { background:#173744; }
.fow-mobile-summary { display:none; }
.fow-hero { position:relative; overflow:hidden; padding:120px 0 82px; background:radial-gradient(circle at 83% 18%,rgba(22,189,243,.33),transparent 25%), linear-gradient(125deg,#020609 0%,#082b3a 64%,#093d4f 100%); }
.fow-hero:before { content:""; position:absolute; inset:-25%; opacity:.3; background:repeating-linear-gradient(110deg,transparent 0 70px,rgba(166,233,255,.17) 71px 72px,transparent 73px 142px); transform:rotate(-7deg); }
.fow-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr); align-items:end; gap:72px; }
.fow-eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 28px; color:#d6edf6; font-size:11px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.fow-eyebrow:before { content:""; width:37px; height:2px; background:var(--cyan); }
.fow-hero h1,.fow-heading-xl { margin:0; max-width:820px; font-size:clamp(60px,8.7vw,124px); font-weight:720; letter-spacing:-.085em; line-height:.86; }
.fow-hero h1 em,.fow-heading-xl em { color:var(--cyan); font-style:normal; }
.fow-lead { max-width:680px; margin:39px 0 0; color:#d5e5eb; font-size:clamp(18px,1.6vw,23px); line-height:1.53; }
.fow-proof { display:flex; flex-wrap:wrap; gap:0; margin-top:34px; color:#b7d4df; font-size:12px; font-weight:750; }
.fow-proof span { padding:0 15px; border-left:1px solid rgba(166,233,255,.42); }
.fow-proof span:first-child { padding-left:0; border-left:0; }
.fow-route-panel { background:#fff; color:#071017; padding:30px; border-top:6px solid var(--cyan); box-shadow:13px 13px 0 rgba(22,189,243,.3); }
.fow-route-panel__kicker,.fow-index { margin:0; color:#00688b; font-size:11px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.fow-route-panel h2 { margin:12px 0 19px; font-size:29px; letter-spacing:-.05em; line-height:1; }
.fow-route { display:grid; grid-template-columns:27px 1fr 20px; gap:12px; align-items:start; padding:17px 0; border-top:1px solid var(--line); transition:padding .18s ease, color .18s ease; }
.fow-route:hover { padding-left:8px; color:#00688b; }
.fow-route__number { color:#00769c; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:11px; }
.fow-route strong { display:block; font-size:15px; line-height:1.25; }
.fow-route small { display:block; margin-top:5px; color:#52636a; font-size:12px; line-height:1.42; }
.fow-route__arrow { font-size:18px; }
.fow-route-panel__footer { display:block; margin-top:5px; padding-top:17px; border-top:1px solid var(--line); color:#00688b; font-size:13px; font-weight:800; }
.fow-hero__rail { position:relative; z-index:2; display:flex; justify-content:space-between; gap:20px; margin-top:65px; padding-top:21px; border-top:1px solid rgba(255,255,255,.25); color:#b9d0d8; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.fow-section { padding:112px 0; }
.fow-section--light { background:var(--paper); color:var(--ink); }
.fow-section--white { background:#fff; color:var(--ink); }
.fow-section--ink { background:var(--ink); color:#fff; }
.fow-section--cyan { background:var(--cyan); color:#001d28; }
.fow-care-strip { background:#fff; color:var(--ink); border-bottom:1px solid var(--line); }
.fow-care-strip__inner { display:grid; grid-template-columns:auto 1fr auto; gap:24px; align-items:center; min-height:102px; }
.fow-care-strip__tag { background:var(--cyan-soft); color:#005d7e; padding:8px 10px; font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; }
.fow-care-strip strong { font-size:19px; }
.fow-care-strip p { margin:4px 0 0; color:var(--muted); font-size:14px; }
.fow-text-link { display:inline-flex; gap:20px; align-items:center; border-bottom:2px solid currentColor; padding:9px 0; color:#00688b; font-size:13px; font-weight:850; }
.fow-split { display:grid; grid-template-columns:.84fr 1.16fr; gap:100px; }
.fow-heading-lg { margin:17px 0 0; max-width:630px; font-size:clamp(43px,5.7vw,82px); font-weight:700; letter-spacing:-.07em; line-height:.92; }
.fow-copy { color:var(--muted); font-size:18px; line-height:1.67; }
.fow-copy p:first-child { margin-top:0; }
.fow-definition { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:42px; background:var(--line); }
.fow-definition article { min-height:185px; padding:23px; background:#fff; }
.fow-definition span,.fow-step span { color:#00769c; font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace; }
.fow-definition h3 { margin:44px 0 8px; font-size:21px; letter-spacing:-.04em; }
.fow-definition p { margin:0; color:var(--muted); font-size:14px; line-height:1.45; }
.fow-section-head { display:flex; align-items:end; justify-content:space-between; gap:45px; margin-bottom:47px; }
.fow-section-head h2 { margin:17px 0 0; max-width:730px; font-size:clamp(42px,5.1vw,74px); font-weight:700; letter-spacing:-.07em; line-height:.93; }
.fow-section-head > p:last-child { max-width:410px; margin:0; color:#60717a; font-size:16px; line-height:1.6; }
.fow-standards { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#24414e; }
.fow-standard { min-height:250px; padding:30px; background:#0a1820; transition:background .2s ease, transform .2s ease; }
.fow-standard:hover { background:#103343; transform:translateY(-4px); }
.fow-standard span { color:var(--cyan); font:800 12px ui-monospace,SFMono-Regular,Menlo,monospace; }
.fow-standard h3 { margin:59px 0 10px; font-size:29px; letter-spacing:-.05em; }
.fow-standard p { margin:0; color:#bccbd1; font-size:14px; line-height:1.52; }
.fow-standards-footer { display:flex; justify-content:space-between; gap:30px; align-items:center; padding-top:30px; color:#cad9df; }
.fow-standards-footer p { margin:0; font-size:15px; }
.fow-both { display:grid; grid-template-columns:.27fr 1fr .85fr; gap:62px; align-items:start; }
.fow-both__number { color:rgba(2,37,50,.38); font-size:clamp(92px,13vw,184px); font-weight:800; letter-spacing:-.1em; line-height:.7; }
.fow-both h2 { margin:16px 0 25px; font-size:clamp(42px,5vw,70px); font-weight:700; letter-spacing:-.07em; line-height:.92; }
.fow-both p { max-width:640px; margin:0 0 29px; font-size:18px; line-height:1.63; }
.fow-both__cards { display:grid; gap:1px; background:rgba(0,29,40,.35); }
.fow-both__cards div { min-height:182px; padding:27px; background:rgba(255,255,255,.13); }
.fow-both__cards span { font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.12em; }
.fow-both__cards strong { display:block; margin:32px 0 7px; font-size:23px; letter-spacing:-.045em; }
.fow-both__cards p { margin:0; font-size:14px; line-height:1.45; }
.fow-process { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#2b434d; }
.fow-step { min-height:280px; padding:29px; background:#0a1820; }
.fow-step h3 { margin:70px 0 13px; font-size:27px; letter-spacing:-.05em; }
.fow-step p { margin:0; color:#b9c9cf; font-size:14px; line-height:1.56; }
.fow-proof-block { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.fow-proof-block h2 { margin:18px 0 0; font-size:clamp(52px,6.7vw,94px); font-weight:700; letter-spacing:-.08em; line-height:.88; }
.fow-proof-block h2 em { color:var(--cyan); font-style:normal; }
.fow-proof-block p { margin:0 0 28px; color:#c3d2d8; font-size:19px; line-height:1.62; }
.fow-cta { position:relative; overflow:hidden; padding:112px 0; background:radial-gradient(circle at 88% 20%,rgba(22,189,243,.46),transparent 31%),linear-gradient(125deg,#02121a,#0b3444); }
.fow-cta:after { content:"FREEDOM"; position:absolute; right:-.04em; bottom:-.16em; color:rgba(255,255,255,.055); font-size:clamp(100px,19vw,320px); font-weight:900; letter-spacing:-.1em; line-height:1; }
.fow-cta__grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr auto; align-items:end; gap:50px; }
.fow-cta h2 { max-width:810px; margin:16px 0 0; font-size:clamp(49px,6vw,89px); font-weight:700; letter-spacing:-.075em; line-height:.9; }
.fow-cta p { max-width:710px; margin:27px 0 0; color:#d2e6ed; font-size:19px; line-height:1.6; }
.fow-footer { background:#02070a; color:#c4d0d5; padding:65px 0 29px; }
.fow-footer__top { display:grid; grid-template-columns:1.3fr repeat(2,.6fr); gap:55px; padding-bottom:54px; border-bottom:1px solid #20333c; }
.fow-footer h2 { margin:0; color:#fff; font-size:31px; letter-spacing:-.06em; }
.fow-footer p { max-width:410px; color:#93a7af; font-size:14px; line-height:1.6; }
.fow-footer h3 { margin:5px 0 18px; color:#fff; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.fow-footer ul { margin:0; padding:0; list-style:none; }
.fow-footer li { margin:0 0 11px; font-size:13px; }
.fow-footer a:hover { color:var(--cyan); }
.fow-footer__bottom { display:flex; justify-content:space-between; gap:20px; padding-top:24px; color:#718891; font:11px ui-monospace,SFMono-Regular,Menlo,monospace; }
.fow-page { padding:130px 0 96px; min-height:65vh; background:var(--paper); color:var(--ink); }
.fow-page h1 { max-width:900px; margin:0 0 30px; font-size:clamp(50px,7vw,100px); letter-spacing:-.075em; line-height:.9; }
.fow-entry { max-width:800px; color:#334d58; font-size:18px; line-height:1.7; }
.fow-entry h2 { margin-top:48px; color:var(--ink); font-size:34px; letter-spacing:-.045em; line-height:1; }
.fow-entry a { color:#00688b; text-decoration:underline; text-underline-offset:4px; }
.fow-contact-grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(360px,.82fr); gap:80px; align-items:start; }
.fow-contact-intro h1 { max-width:680px; }
.fow-contact-intro>p:not(.fow-index) { max-width:570px; color:#435a64; font-size:19px; line-height:1.64; }
.fow-contact-card { padding:31px; background:#fff; border-top:6px solid var(--cyan); box-shadow:var(--shadow); }
.fow-contact-form { display:grid; gap:19px; }
.fow-contact-form>label { display:grid; gap:7px; color:#162a34; font-size:13px; font-weight:800; }
.fow-contact-form input:not([type="checkbox"]),.fow-contact-form textarea { width:100%; padding:13px 14px; border:1px solid #b8cbd3; border-radius:0; background:#fbfdfe; color:#071017; font-size:16px; font-weight:500; }
.fow-contact-form textarea { resize:vertical; min-height:130px; }
.fow-contact-form input:not([type="checkbox"]):focus,.fow-contact-form textarea:focus { border-color:#00769c; outline:3px solid rgba(22,189,243,.28); outline-offset:0; }
.fow-contact-form .fow-button { width:100%; border:0; cursor:pointer; }
.fow-consent { display:flex!important; align-items:flex-start; gap:10px!important; color:#4a5f68!important; font-size:12px!important; font-weight:600!important; line-height:1.55; }
.fow-consent input { flex:0 0 auto; width:16px; height:16px; margin:2px 0 0; accent-color:#00688b; }
.fow-consent a { color:#00688b; text-decoration:underline; text-underline-offset:3px; }
.fow-honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.fow-form-notice { margin:0 0 20px; padding:14px 15px; border-left:4px solid #b6452c; background:#fff3ed; color:#662b1e; font-size:14px; font-weight:700; }
.fow-form-notice--success { border-color:#087864; background:#e5f7f2; color:#075847; }
@media (max-width:900px) { .fow-header__inner{grid-template-columns:1fr auto;min-height:68px}.fow-nav{display:none}.fow-mobile-summary{display:block;cursor:pointer;font-size:12px;font-weight:800}.fow-mobile-summary+nav{padding-bottom:15px}.fow-mobile-summary+nav ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.fow-mobile-summary+nav a{display:block;padding:8px 0;font-size:13px}.fow-header__cta{display:none}.fow-hero{padding-top:88px}.fow-hero__grid,.fow-split,.fow-proof-block,.fow-cta__grid,.fow-contact-grid{grid-template-columns:1fr;gap:45px}.fow-care-strip__inner{grid-template-columns:1fr;gap:10px;padding:24px 0}.fow-both{grid-template-columns:1fr;gap:30px}.fow-both__number{font-size:100px}.fow-definition,.fow-standards{grid-template-columns:repeat(2,1fr)}.fow-process{grid-template-columns:repeat(2,1fr)}.fow-section-head{display:block}.fow-section-head>p:last-child{margin-top:22px}.fow-footer__top{grid-template-columns:1fr 1fr}.fow-footer__top>div:first-child{grid-column:1/-1}.fow-cta__grid .fow-button{width:max-content} }
@media (max-width:580px) { .fow-shell{width:min(100% - 32px,1240px)}.fow-section,.fow-cta{padding:76px 0}.fow-hero{padding-bottom:58px}.fow-hero h1{font-size:56px}.fow-lead{font-size:18px}.fow-route-panel{padding:23px}.fow-hero__rail{display:none}.fow-definition,.fow-standards,.fow-process{grid-template-columns:1fr}.fow-standards-footer,.fow-footer__bottom{display:block}.fow-standards-footer .fow-text-link{margin-top:18px}.fow-proof{display:block}.fow-proof span{display:block;padding:4px 0;border:0}.fow-footer__top{grid-template-columns:1fr;gap:30px}.fow-footer__top>div:first-child{grid-column:auto}.fow-footer__bottom p{margin:0 0 10px}.fow-heading-lg{font-size:45px}.fow-cta h2{font-size:51px}.fow-page{padding-top:102px} }
