/* Obsidian / Pearl — visual layer over the complete Freedom Founders site.
   Component geometry, content, navigation and behavior are inherited. */
:root {
  color-scheme:dark;
  --cream:#07090c; --paper:#111419; --blue:#171c23; --blue-soft:#0e1218;
  --apricot:#dddde2; --apricot-soft:#202129;
  --ink:#f2f0ea; --muted:#b1b5bf; --link:#d1deea; --line:#353b45;
  --obsidian:#07090c; --pearl:#f2f0ea; --prism-cyan:#b9e7f0;
  --prism-lilac:#d7c4ee; --prism-red:#ff5145;
  --shadow-small:0 2px 4px #0008,0 9px 20px #0005,inset 0 1px 0 #ffffff24;
  --shadow-card:0 3px 6px #0006,0 24px 48px -18px #000c,inset 0 1px 0 #ffffff28;
  --shadow-raised:0 4px 8px #0008,0 24px 48px #0008,inset 0 1px 0 #ffffff38;
  background:var(--obsidian); color:var(--pearl);
}
body {background:radial-gradient(ellipse at 88% 2%,#39435119,transparent 28%),#07090c;color:var(--pearl)}
body :is(.blue-surface,.work-band,.contact-band,.audit-card,.phone-stage,.system-stage,.search-stage,.work-detail-images figure,.services-project-image,.company-metric:last-child,.booking-host){--muted:#b1b5bf}
::selection{background:#cdd3e3;color:#07090c}
:focus-visible{outline-color:#d9e8ef!important}
.brand-mark{filter:invert(1);opacity:.95}
.site-header,.site-header.scrolled,.glass,.glass-heavy,.conversion-dock {
 background:linear-gradient(150deg,#aebfd01b,#ffffff03 45%,#bfd0de09),#10141ad9;
 border-color:#b9c5d544;color:var(--pearl);
 box-shadow:0 3px 5px #0008,0 18px 48px #0007,inset 0 1px 1px #ffffff6b,inset 1px 0 1px #a9c8d533,inset -1px -1px 1px #d8c7dd30;
 -webkit-backdrop-filter:blur(24px) saturate(1.1);backdrop-filter:blur(24px) saturate(1.1);
}
.glass::before{background:linear-gradient(135deg,#ffffff10,#ffffff00 37%,#b4d0ec04 65%,#ffffff0b)}
.glass::after{background:radial-gradient(260px circle at var(--gx,30%) var(--gy,0%),#dcecf017,transparent 72%);box-shadow:inset 1px 0 0 #ffffff20,inset -1px 0 0 #d4c3df20;opacity:.8}
.site-header::before{inset:0;padding:1px;background:linear-gradient(118deg,#eef4f380 0%,#bbdef164 3%,#c7b3e15c 7%,transparent 16%,transparent 73%,#e4c6b454 89%,#dcebed68 97%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;z-index:0}
.site-header.scrolled::before{opacity:.6}
.site-header .wordmark{color:var(--pearl)}
.site-nav>a:not(.btn)::after{height:1px;background:linear-gradient(90deg,#d8ecf0,#ccbce3,#e5caba)}
.menu-lines span{background:var(--pearl)}
.menu-toggle:hover{background:#ffffff0b}
.menu-backdrop{background:#0009}
.skip-link{background:var(--pearl);color:var(--obsidian)}

/* Pearl controls are the one luminous solid in the otherwise smoked material. */
body :is(.btn-primary,.btn-ink,.dock-cta),body :is(.btn-primary,.btn-ink,.dock-cta):hover {
 --cta-top:#f2f0ea;--cta-bottom:#c4c8ce;--cta-edge:#7c8189;--cta-shadow:#0009;
 color:#101319;border-color:#f5f3edf0;
 background:linear-gradient(170deg,#fff9,transparent 42%),linear-gradient(#efeee9,#c8cbd1);
 box-shadow:0 3px 0 #6e747f,0 8px 24px #0009,0 0 25px #dce8f00d,inset 0 1px 2px #fffe;
 text-shadow:0 1px 0 #ffffff4d;
}
body :is(.btn-secondary,.round-link){background:linear-gradient(150deg,#ffffff14,transparent 50%),#151a20c9;border-color:#7c879463;color:#e7e8ed;box-shadow:var(--shadow-small),inset -1px -1px 0 #c6b8d324}
body :is(.btn-secondary,.round-link):hover{color:#fff;background-color:#222831;border-color:#c7d6e09c;box-shadow:0 10px 25px #0008,inset 1px 0 0 #c2e6ef85,inset -1px 0 0 #e26c5175}
.btn:active,.dock-cta:active{box-shadow:inset 0 2px 5px #0005!important}
.dock-divider{background:#fff3}.dock-light{background:#c6e9e1;box-shadow:0 0 0 4px #bfdde516,0 0 12px #badce334}

/* Hero art lives behind the exact existing two-column headline and CTA layout. */
.hero-cover{background:#07090c;color:var(--pearl)}
.hero-background{inset:0}
.hero-background>img{filter:none;object-position:center center;opacity:.86}
.hero-cover::after{background:linear-gradient(90deg,#07090cdd 0%,#07090c9c 39%,#07090c70 65%,#07090c42),linear-gradient(180deg,#07090c30,transparent 55%,#07090c)}
.hero-cover :is(.lead,.hero-expectation,.text-link){color:#d2d6de}
.hero-cover h1 em{color:#e2e8ef}
.hero-cover h1{text-shadow:0 2px 28px #0008}
.hero-cover .eyebrow{color:#ccd9e6}
.hero-cover .hero-role-line{color:#d8dee7}
.brand-promise{background:linear-gradient(90deg,#0b0e13,#181b2299,#0b0e13);border-color:#ffffff14}
.brand-promise-line>span:nth-child(2){color:#d6deeb}
.brand-promise-line>span:last-child{text-decoration-color:#c1b9d2}
.tinted,.blue-surface,.work-band{background:linear-gradient(150deg,#13181d,#0c1015 62%);border-color:var(--line)}
:is(.contact-band,.free-call-strip,.direct-build){background:linear-gradient(135deg,#ffffff08,transparent 42%),linear-gradient(125deg,#181d25,#10131a);border:1px solid #77818e4d;box-shadow:var(--shadow-card)}
:is(.contact-band,.free-call-strip) .lead{color:#d4d8df}
.owner-problems article,.process-step,.capability-grid article,.session-topics article{border-color:#424956}
.owner-problems .problem-mark,.process-number{color:#c7d3e2}
.service-row:hover,.start-routes>a:hover{background:#c5d8ec08}
.company-milestones>li:not(:last-child)::before{background:linear-gradient(#cbd4df88,#77808e20)}

/* Dimensional cards use a small pearlescent rim, leaving content surfaces quiet. */
body :is(.premium-offer,.package,.service-outcome,.audit-card,.contact-form,.booking-shell,.company-metric,.services-project-image,.offer-product-view,.work-detail-images figure,.work-card-visual,.phone-stage,.system-stage,.search-stage,.swatch-card,.design-stage .type-card) {
 background:linear-gradient(145deg,#ffffff09,transparent 48%),#12171d;
 border-color:#7180914d;box-shadow:var(--shadow-card);color:var(--pearl);
}
.premium-offer::before{background:radial-gradient(380px circle at var(--spot-x,50%) var(--spot-y,50%),#dbe8f40e,transparent 72%)}
.premium-offer::after{background:radial-gradient(230px circle at var(--spot-x,50%) var(--spot-y,50%),#e7f1f0c4,#b9d5efa1 25%,#df78617d 48%,transparent 76%)}
.premium-offer:focus-within{border-color:#cedfe0;box-shadow:0 14px 40px #0008}
.company-metric:last-child,.work-card-visual.orange{background:linear-gradient(130deg,#c9c3df10,transparent),#171b23;border-color:#b6b1c04d}
:is(.founder-initial,.founder:nth-child(2) .founder-initial){background:#1e252e;border:1px solid #8495a656;color:#e8e8ec}
.founder-portrait,.founder:nth-child(2) .founder-portrait{background:#151a20}
.offer-facts li{background:#1b222b;border-color:#5d6e8063;color:#e2e6ed}
.services-project-image>img,.offer-product-view>img{border-color:#ffffff26}

/* Live portfolio screenshots retain their actual client colors. */
body .project-trio{--trio-ground:#111820;background:radial-gradient(ellipse at 80% 8%,#a8bed314,transparent 70%),#111820;box-shadow:var(--shadow-card)}
body .project-trio.theme-apricot{--trio-ground:#1b1922;background:radial-gradient(ellipse at 90% 5%,#d9745610,transparent 70%),#15151d}
body .project-trio.theme-slate{--trio-ground:#10161c;background:#10161c}
.browser-frame,.trio-shot{border-color:#73869b66;background:#141920;box-shadow:var(--shadow-raised)}
.browser-bar,.trio-chrome{background:#1d232d;color:#bdc6d0;border-color:#6d7b8f47}
.browser-bar span,.trio-dots i{background:#718090}
.screenshot-dialog{background:#10151b;color:var(--pearl);border-color:#b8c5d15e;box-shadow:0 30px 120px #000b}
.screenshot-dialog::backdrop{background:#020408e6;backdrop-filter:blur(12px)}
.screenshot-dialog-head{background:#11171e;border-color:#ffffff21}
.screenshot-dialog-media{background:#070a0e}
.screenshot-dialog-foot button:hover{background:#293340}
.screenshot-dialog-close:hover{background:#28303b}
/* The original clay animation is intentionally unfiltered and displayed on
   its native light canvas inside a smoked glass frame. */
.projects-animation-stage{background:#f5f3ed;border:1px solid #93a0af70;border-radius:22px;mask-image:none;-webkit-mask-image:none;box-shadow:0 22px 60px #0008,inset 0 1px 0 #fff8}
.projects-animation-stage>img,.projects-animation-stage>video{mix-blend-mode:normal;filter:none}

/* Demo surfaces and human-readable state colors. */
body :is(.system-window,.system-line,.search-result,.search-query,.call-note){background:#0c1118;border-color:#52617670;color:#e7eaf0;box-shadow:var(--shadow-small)}
body .call-note.customer{background:#273440;color:#eaf0f3}
body .status-label,body .system-line:last-child .status-label{background:#202d38;color:#c3e8ef!important;border:1px solid #6894a55c}
.phone-controls button{background:#1c232d;border-color:#66768966;color:#dce3ee}
.phone-controls button:hover{background:#293341}
.phone-controls button[aria-pressed=true]{background:#e4e5e7;color:#101720;border-color:#e4e5e7}
.swatch-row span{background:#080a0e}.swatch-row span:nth-child(2){background:#222730}.swatch-row span:nth-child(3){background:#f2f0ea}.swatch-row span:nth-child(4){background:linear-gradient(130deg,#bedde9,#ff5145 22%,#efb157 42%,#9685ed 65%,#ead5c1 65%,#a8d5d3)}

/* Every calendar, contact and floating availability state remains legible. */
.field input,.field textarea,.field select,.draft-fallback textarea,.booking-timezone select{background:#0c1117;color:#edf0f4;border-color:#7786997a;box-shadow:inset 0 2px 5px #0005}
.field input::placeholder,.field textarea::placeholder{color:#929dab}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#b8d3e0}
.booking-host{background:linear-gradient(150deg,#1c2430,#111820 80%)}
.booking-shell{border-color:#66768966}
.booking-demo-note,.booking-topic-note,.booking-picked-summary,.booking-confirmation,.booking-sample-button{background:#1c2430;border-color:#65758c6b;color:#e1e7ef}
.booking-demo-tag{background:#3b3a43;color:#e9e1cc}
.booking-topic-note :is(.label,p,small){color:#d7dfeb}
.booking-days button{background:#202b36;color:#e4e9f0;border-color:#6a7f964d}
.booking-days button:disabled{color:#707b89;background:transparent;border-color:transparent}
.booking-days button:not(:disabled):hover,.booking-times button:hover{background:#344352;color:#fff}
.booking-days button[aria-pressed=true],.booking-times button[aria-pressed=true]{background:#e0e5e8;color:#121820;border-color:#edf0f2;box-shadow:0 0 0 2px #aac7db3b}
.booking-progress [aria-current=step]>span{background:#e5e7ea;border-color:#e5e7ea;color:#11161d}
.booking-progress .is-complete>span{background:#253846;border-color:#7899ad;color:#cde8ed}
.booking-times button{color:#d8e6ee;border-color:#73879e7a}
.booking-calendar-key i{background:#4f6578}
.booking-complete-icon{background:#243844;color:#d7e9ef}
.booking-no-appointment{color:#b6bfcb}
.form-status:not(:empty){background:#222e38;color:#d6e7ed}
.availability-preview summary{background:#17202c;border-color:#66778b77;color:#e4e9f0}
.availability-tag{background:#3e3943;color:#e8dfd0}
.availability-card{background:#111820f7;border-color:#9aabba6b;color:#edf0f3;box-shadow:0 22px 52px #000a}
.availability-day{background:#202b37;border-color:#6c7b8c66;color:#e4e9ef}
.availability-day:hover{background:#344353}
.availability-dot{background:#a7cdbd;box-shadow:0 0 0 4px #b0d5c014}
.premium-steps ol::before{background:#63738647}
.premium-steps ol::after{background:linear-gradient(#cfdfdf,#c9b9da);box-shadow:0 0 12px #c6d9e620}
.premium-steps li::before{background:#202a35;color:#d6e2ea;border-color:#71829880}
.premium-steps li strong,.premium-steps li span{color:#bec9d7}
.premium-steps li.is-current strong,.premium-steps li.is-current span{color:#f2f0ea}
.premium-steps li.is-current::before,.premium-steps li.is-past::before{background:#e1e6e7;color:#111820;border-color:#e1e6e7}
.premium-steps li.is-current::before{box-shadow:0 0 0 5px #090d12,0 0 0 6px #b9cadd66}
.contact-options,.contact-options[open]{border-color:#67778a66}
.site-footer{background:linear-gradient(180deg,transparent,#030609)}
.footer-bottom{border-color:#ffffff20}
.footer-brand-slogan{color:#eceae7}
@media(max-width:820px){
 .site-nav{background:#10161ef5;border-color:#8493a666;box-shadow:0 26px 50px #0009}
 .hero-cover::after{background:linear-gradient(90deg,#07090ce8,#07090c8a),linear-gradient(180deg,#07090c22,transparent,#07090c)}
 .hero-background>img{object-position:67% center;filter:none;opacity:.72}
}
@media(prefers-reduced-transparency:reduce){.glass,.site-header,.site-header.scrolled,.conversion-dock,.availability-card{background:#121820;backdrop-filter:none;-webkit-backdrop-filter:none}.hero-cover::after{background:#07090ccd}}
@supports not (backdrop-filter:blur(1px)){.glass,.site-header,.site-header.scrolled,.site-nav,.conversion-dock{background:#121820}}
@media(prefers-reduced-motion:reduce){.glass,.glass::before,.glass::after,.btn,.premium-offer{transition:none!important}}
@media print{body{background:white;color:#111} .site-header,.conversion-dock{display:none} main{padding-top:0} :root{--ink:#111;--muted:#555;--cream:#fff;--paper:#fff;--link:#222;--blue:#eee;--line:#bbb}}

/* Preserve the story illustration beneath an appropriately dark reading veil. */
.about-hero::before{background:linear-gradient(90deg,#07090ce3 0%,#07090cc7 48%,#07090ce0 100%),linear-gradient(180deg,#07090c20,transparent 70%,#07090c88)}
@media(max-width:820px){.about-hero::before{background:linear-gradient(180deg,#07090ce3,#07090cc7 60%,#07090cf0)}}

.projects-animation-stage{overflow:hidden}

@media screen{.founder-paths__convergence>img{filter:invert(1)}}
