/* Flied's product site: generous type, an actual app preview, and clear pricing. */
:root { --paper:#f8f7f1; --ink:#203e35; --muted:#53665c; --green:#245442; --deep:#183e34; --line:#d9dfd3; }
body { font-size:16px; line-height:1.7; }
.wrap { width:min(1280px,calc(100% - 80px)); }
.site-header { min-height:100px; gap:28px; }
.brand { font-size:27px; gap:12px; }
.brand img { width:44px; height:44px; }
.brand-sub { font-size:9px; letter-spacing:.09em; }
.brand-tm { font-size:10px; }
.site-header nav { font-size:14px; gap:26px; }
.header-action { font-size:14px; padding:10px 18px; gap:22px; margin-left:8px; }
.eyebrow { font-size:11px; line-height:1.8; letter-spacing:.12em; }
.tiny-label { font-size:10px; }
.hero { display:block; padding-block:66px 48px; }
.hero-top { display:grid; grid-template-columns:1.65fr 1fr; gap:70px; align-items:end; }
.hero .eyebrow { font-size:10px; gap:9px; }
.hero h1 { font-size:clamp(44px,4.5vw,68px); margin-top:24px; letter-spacing:-.045em; max-width:790px; line-height:1.09; }
.hero h1 em { color:#63774f; }
.hero-description { max-width:410px; margin:0; font-size:17px; line-height:1.8; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 25px; margin-top:26px; }
.button { min-height:48px; padding:13px 21px; border:1px solid transparent; border-radius:6px; gap:26px; font:600 15px/1.4 var(--sans); cursor:pointer; box-shadow:none; margin-top:0; transition:background .15s,transform .15s; }
.text-link { display:inline-flex; align-items:center; gap:14px; font-size:14px; font-weight:600; text-underline-offset:5px; }
.hero-footnote { margin-top:24px; font-size:12px; flex-wrap:wrap; }
.hero-art { padding:0; margin-top:46px; border:1px solid #b9c5b3; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 20px 50px -35px #203e3577; }
.preview-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 20px; background:#e9eddf; border-bottom:1px solid #cbd5c2; font-size:11px; letter-spacing:.08em; font-weight:600; }
.preview-toolbar>span:first-child { display:flex; align-items:center; gap:16px; }
.window-dots { color:#9eae90; font-size:9px; letter-spacing:3px; }
.screenshot-preview { border:0; border-radius:0; box-shadow:none; transform:none; }
.screenshot-preview img { width:100%; height:auto; }
.preview-caption { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0; padding:14px 20px; background:#fff; color:#506047; }
.preview-caption p { font:italic 17px var(--serif); }
.preview-caption>span { font-size:10px; letter-spacing:.06em; }
.product-facts { display:grid; grid-template-columns:repeat(4,1fr); margin-top:30px; gap:22px; }
.product-facts p { font-size:13px; color:var(--muted); padding-left:18px; border-left:1px solid #c9d4c1; }
.product-facts strong { display:block; color:var(--ink); font-size:16px; font-weight:600; }
.craft-strip .wrap { font-size:17px; padding-block:24px; }
.section-space { padding-block:88px; }
h2 { font-size:clamp(36px,4vw,54px); }
.section-heading { align-items:end; gap:45px; }
.section-heading>p { max-width:400px; font-size:16px; line-height:1.85; color:var(--muted); }
.workspace-tour { margin-top:38px; gap:44px; }
.tour-step { padding-block:26px; gap:20px; }
.tour-step h3 { font-size:20px; }
.tour-step p { font-size:15px; max-width:390px; }
.step-number { font-size:12px; }
.tour-display { padding:30px; border-radius:10px; }
.tour-panel-heading h3 { font-size:25px; }
.outline-label { font-size:11px; }
.pattern-card>p { font-size:16px; }
.pattern-card>span { font-size:12px; }
.pattern-art { height:150px; }
.recipe-note strong { font-size:14px; }
.recipe-note p { font-size:14px; line-height:1.75; }
.demo-note { font-size:11px; }
.kit-preview h4,.job-preview h4 { font-size:27px; }
.kit-preview p,.job-preview>p { font-size:14px; }
.workspace-extras { margin-top:34px; padding-top:28px; }
.workspace-extras strong { font-size:15px; }
.workspace-extras p>span:last-child { font-size:13px; }
.gill-layout { padding-block:60px; gap:65px; }
.gill-art { max-width:390px; margin:auto; }
.gill-bubble { font-size:16px; top:22px; right:-15px; }
.gill-signature { font-size:23px; }
.gill-copy>p:not(.eyebrow) { font-size:16px; line-height:1.85; }
.gill-detail p { font-size:14px; }
.light-link { font-size:13px; }
.connections-section { gap:75px; }
.connections-copy>p:not(.eyebrow) { font-size:16px; line-height:1.85; }
.connections-copy .connection-note { font-size:14px!important; padding-left:15px; border-left:2px solid #a9b78f; }
.connections-diagram { padding:35px; border-radius:10px; }
.flow-label { font-size:10px; }
.order-destination strong { font-size:18px; }
.order-destination div>span,.connections-diagram>p { font-size:13px; }
.pricing-section { border-top:1px solid var(--line); scroll-margin-top:25px; }
.pricing-includes { margin-top:34px; padding:22px 0; border-block:1px solid var(--line); display:grid; grid-template-columns:190px 1fr; gap:20px; font-size:14px; }
.pricing-includes>span { font-weight:600; }
.pricing-includes p { color:var(--muted); line-height:1.9; }
.pricing-includes p span { padding-inline:9px; color:#839778; }
.pricing-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:30px; }
.price-card { display:flex; flex-direction:column; background:#fffefa; padding:34px; border:1px solid #c9d4c1; border-radius:10px; }
.plan-heading { display:flex; justify-content:space-between; align-items:center; gap:15px; flex-wrap:wrap; }
.plan-heading h3 { font:400 29px var(--serif); }
.plan-caption { font-size:13px; color:var(--muted); }
.saving-badge { display:inline-block; padding:5px 12px; background:#dce7bb; border-radius:4px; color:#233d29; font-size:12px; font-weight:600; }
.plan-price { display:flex; align-items:baseline; gap:13px; flex-wrap:wrap; margin-top:26px; font:400 63px/1.2 var(--serif); letter-spacing:-.05em; }
.plan-price>span { font:400 15px var(--sans); letter-spacing:0; }
.plan-billing { margin-top:15px; font-size:14px; line-height:1.8; }
.plan-description { margin-top:23px; font-size:16px; color:var(--muted); min-height:58px; }
.purchase-button { width:100%; margin-top:28px; justify-content:center; }
.purchase-button:disabled { color:#62735b; background:#e6ebdd; border-color:#d7dfcc; cursor:default; transform:none; }
.plan-small { margin-top:15px; font-size:12px; color:var(--muted); }
.yearly-card { background:var(--deep); color:#f5f6ed; border-color:var(--deep); }
.yearly-card .plan-description,.yearly-card .plan-small { color:#d4ddcb; }
.yearly-card .purchase-button { background:#e1e9c9; color:#23412c; }
.yearly-card .purchase-button:hover { background:#f0f4e3; }
.yearly-card .purchase-button:disabled { background:#355747; color:#d2ddca; border-color:#536f5c; }
.checkout-notice { display:flex; align-items:baseline; gap:11px; margin-top:24px; font-size:14px; }
.checkout-notice .status-dot { background:#b68c43; width:7px; height:7px; }
.pricing-fineprint { font-size:13px; color:var(--muted); margin-top:10px; max-width:1000px; }
.purchase-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:42px; padding-top:32px; border-top:1px solid var(--line); }
.purchase-steps>div>span { font-size:12px; letter-spacing:.06em; color:#6a7f57; }
.purchase-steps h3 { font-size:17px; margin-top:10px; font-weight:600; }
.purchase-steps p { margin-top:8px; font-size:14px; color:var(--muted); }
.purchase-help { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; margin-top:30px; }
.faq-section { border-top:1px solid var(--line); }
.faq-list summary { font-size:16px; padding-block:22px; }
.faq-list details>p { font-size:15px; line-height:1.85; }
.footer-links { flex-wrap:wrap; font-size:13px; gap:20px; }
.footer-links .support-contact { flex-basis:100%; }
.footer-bottom,.support-contact,.footer-legal { font-size:12px; }
.terms-button { font-size:13px; }
.privacy-main { max-width:860px; padding-block:65px 90px; }
.privacy-main>h1 { font-size:clamp(44px,6vw,72px); }
.privacy-main section h2 { font-size:27px; }
.privacy-main section p,.privacy-main section li { font-size:16px; line-height:1.9; }
.privacy-callout { font-size:14px; }
.legal-navigation { font-size:14px; }
button:focus-visible { outline:3px solid #b46e44; outline-offset:5px; }
@media(min-width:1600px) { .hero h1 { font-size:72px; } }
@media(max-width:1000px) {
  .wrap { width:calc(100% - 56px); }
  .site-header { gap:20px; }
  .site-header nav { gap:18px; font-size:13px; }
  .hero-top { grid-template-columns:1.4fr 1fr; gap:35px; }
  .hero h1 { font-size:51px; }
  .hero-description { font-size:16px; }
  .hero-actions { gap:18px; }
  .workspace-tour { gap:28px; }
  .tour-display { padding:24px; }
  .connections-section { gap:40px; }
  .price-card { padding:28px; }
}
@media(max-width:760px) {
  .site-header { display:grid; grid-template-columns:1fr auto; min-height:120px; padding-block:20px 16px; gap:18px; }
  .site-header nav { display:flex; grid-column:1/-1; grid-row:2; margin:0; justify-content:space-between; font-size:13px; gap:12px; flex-wrap:wrap; }
  .header-action { margin-left:0; font-size:13px; padding:10px 13px; gap:13px; }
  .hero { padding-block:40px 36px; }
  .hero-top { grid-template-columns:1fr; gap:25px; }
  .hero h1 { font-size:clamp(40px,7vw,57px); margin-top:18px; max-width:650px; }
  .hero .eyebrow { font-size:9px; }
  .hero-description { max-width:570px; font-size:16px; }
  .hero-actions { margin-top:22px; gap:18px 26px; }
  .hero-footnote { font-size:11px; margin-top:18px; }
  .hero-art { margin-top:30px; }
  .preview-caption { align-items:flex-start; flex-direction:column; gap:7px; }
  .preview-caption p { font-size:16px; }
  .preview-caption>span { font-size:9px; }
  .product-facts { grid-template-columns:1fr 1fr; gap:18px; margin-top:24px; }
  .craft-strip .wrap { font-size:15px; padding-block:20px; }
  .section-space { padding-block:56px; }
  .section-heading { display:block; }
  .section-heading>p { max-width:none; margin-top:20px; font-size:16px; }
  h2 { font-size:41px; }
  .workspace-tour { grid-template-columns:1fr; gap:25px; }
  .tour-step h3 { font-size:19px; }
  .tour-step p { max-width:none; font-size:15px; }
  .workspace-extras { grid-template-columns:1fr; gap:20px; }
  .gill-layout { grid-template-columns:1fr; gap:20px; padding-block:35px 45px; }
  .gill-art { max-width:330px; }
  .gill-bubble { font-size:14px; right:-2px; }
  .gill-copy h2 { font-size:42px; }
  .gill-copy>p:not(.eyebrow) { font-size:16px; }
  .gill-detail p { font-size:14px; }
  .connections-section { grid-template-columns:1fr; gap:30px; }
  .connections-copy>p:not(.eyebrow) { font-size:16px; max-width:none; }
  .pricing-includes { grid-template-columns:1fr; gap:8px; }
  .pricing-grid { grid-template-columns:1fr; gap:20px; }
  .price-card { padding:28px; }
  .plan-description { min-height:0; }
  .purchase-steps { grid-template-columns:1fr; gap:25px; }
  .faq-section { grid-template-columns:1fr; gap:28px; }
  .faq-list summary { font-size:16px; }
  .faq-list details>p { font-size:15px; }
  .footer-top { align-items:flex-start; flex-direction:column; gap:25px; }
  .footer-links { max-width:none; gap:16px 24px; font-size:13px; }
  .footer-links .support-contact { text-align:left; }
  .footer-legal { font-size:12px; }
}
@media(max-width:420px) {
  .wrap { width:calc(100% - 36px); }
  .hero h1 { font-size:40px; }
  .brand { font-size:24px; }
  .brand img { width:38px; height:38px; }
  .brand-sub { font-size:8px; }
  .site-header nav { font-size:12px; }
  .preview-toolbar { padding:11px 13px; font-size:9px; }
  .preview-toolbar>span:first-child { gap:10px; }
  .window-dots { font-size:7px; letter-spacing:1px; }
  .preview-caption { padding:12px 14px; }
  .product-facts p { padding-left:12px; font-size:12px; }
  .product-facts strong { font-size:14px; }
  .tour-display { padding:19px; }
  .tour-panel-heading { flex-wrap:wrap; gap:12px; }
  .pattern-card>p { font-size:14px; }
  .pattern-card>span { font-size:11px; }
  .pattern-art { height:105px; }
  .price-card { padding:25px; }
  .plan-price { font-size:58px; }
  .plan-heading h3 { font-size:27px; }
  .saving-badge { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
