/* Source for public/book/book.css; run tools/gen-book-web-media.ts after edits. */
@font-face{font-family:BookNeucha;src:url('/book/fonts/Neucha.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:BookCaveat;src:url('/book/fonts/Caveat-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
.fb-book{--book-ink:#184b58;--book-muted:#42646a;--book-paper:#fffdf5;background:var(--book-paper);color:var(--book-ink)}
.fb-book .fb-header{position:relative;background:transparent;border-bottom:0}
.fb-book .fb-wordmark{display:block;width:134px;height:60px;flex-shrink:0;font-size:0;background:var(--book-ink);mask:url('/brand/farbarium-watermark-mask.png') center/contain no-repeat;mask-mode:luminance}
.fb-book .fb-wordmark span{display:none}
.fb-book .fb-breadcrumbs{max-width:1200px;margin-inline:auto;padding-top:0}
.fb-book main{overflow:hidden}
.fb-book h1,.fb-book h2,.fb-book h3{font-family:BookNeucha,Farbarium,sans-serif;font-weight:400;line-height:1.14;color:var(--book-ink);text-wrap:balance}
.fb-book h2{font-size:clamp(32px,4vw,50px)}
.fb-book p{color:var(--book-muted);text-wrap:pretty}
.fb-book img{display:block;max-width:100%;height:auto}
.fb-book-hero{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:45px;padding:32px 48px 85px;position:relative}
.fb-book-hero:before{content:'';position:absolute;z-index:-1;width:100vw;left:50%;transform:translateX(-50%);top:-140px;bottom:-25px;background:radial-gradient(ellipse at 85% 30%,#bce9e5 0,transparent 55%),linear-gradient(165deg,#f7fcef,#e7f6ee 60%,#fffdf5);border-radius:0 0 45% 12%/0 0 6% 3%}
.fb-book .fb-book-eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.16em;color:#467b74;margin-bottom:12px}
.fb-book .fb-book-hero h1{font-family:BookCaveat,BookNeucha,cursive;font-size:clamp(66px,8vw,102px);font-weight:500;line-height:.98;letter-spacing:-.03em;margin-bottom:21px}
.fb-book .fb-book-hero h2{font-size:clamp(30px,3.5vw,42px);margin-bottom:23px}
.fb-book .fb-book-lead{max-width:470px;font-size:17px;line-height:1.75}
.fb-book-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px}
.fb-book a.fb-book-open{font:400 23px/1.25 BookNeucha,Farbarium,sans-serif;background:linear-gradient(145deg,#197b79,#126366);color:#fffdf5;border:1px solid #166968;border-radius:29px 35px 31px 25px/31px 29px 33px 28px;padding:12px 25px 12px 14px;min-height:66px;max-width:100%;gap:13px;text-align:center;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:inset 0 1px 0 #ffffff40,0 4px 0 #c0ddd2,0 8px 16px #184b5817;transition:transform .18s,box-shadow .18s;isolation:isolate;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.fb-book-open-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid #e7fff246;border-radius:48% 52% 45% 55%/53% 46% 54% 47%;background:#ffffff10}
.fb-book-open-icon svg{display:block;width:32px;height:32px}
.fb-book-open-label{min-width:0;overflow-wrap:anywhere;text-wrap:balance}
@media(hover:hover){.fb-book a.fb-book-open:hover{background:linear-gradient(145deg,#166f6d,#0f565b);transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff40,0 6px 0 #c0ddd2,0 12px 22px #184b5826}}
.fb-book a.fb-book-open:active{background:linear-gradient(145deg,#146365,#104f54);transform:translateY(2px);box-shadow:inset 0 1px 0 #ffffff30,0 1px 0 #c0ddd2,0 3px 8px #184b5817}
.fb-book a.fb-book-open:focus-visible{outline:3px solid #b95329;outline-offset:5px}
.fb-book a:focus-visible,.fb-book summary:focus-visible{outline:3px solid #b95329;outline-offset:5px}
.fb-book-text-link{color:#175861;text-decoration:underline;text-underline-offset:5px;font-size:15px;display:inline-block;padding:7px 0}
.fb-book-facts{display:flex;gap:30px;margin:34px 0 0;padding:0}
.fb-book-facts div{min-width:70px}
.fb-book-facts dt{font:400 36px/1 BookNeucha,sans-serif;color:#b4502c}
.fb-book-facts dd{margin:7px 0 0;font-size:13px;line-height:1.4;color:var(--book-muted)}
.fb-book-cover-scene{position:relative;min-height:560px;display:flex;align-items:center;justify-content:center;padding:10px 50px 25px}
.fb-book .fb-book-cover{width:350px;border-radius:2px 7px 7px 2px;box-shadow:1px 2px 0 #e1d7bd,4px 5px 0 #fffdf4,5px 7px 0 #d6d4bf,14px 26px 37px #214e5933;transform:rotate(5deg);position:relative;z-index:1}
.fb-book-water-orbit{position:absolute;inset:4% -5% 0 -3%;border:1px solid #89c9c4;border-radius:47% 53% 61% 39%/50% 44% 56% 50%;transform:rotate(-13deg)}
.fb-book-water-orbit:before,.fb-book-water-orbit:after{content:'';position:absolute;border:1px solid #89c9c4;border-radius:50%;background:#fffdf555;width:25px;height:25px;left:0;top:20%}
.fb-book-water-orbit:after{width:13px;height:13px;left:8px;top:13%}
.fb-book .fb-book-swimmer{position:absolute;z-index:2;bottom:-13px;left:-10px;width:170px;transform:rotate(-8deg);filter:drop-shadow(0 7px 4px #44674f24)}
.fb-book-section{max-width:1180px;margin:auto;padding:75px 40px;scroll-margin-top:30px}
.fb-book-section-intro{max-width:700px;text-align:center;margin:0 auto 48px}
.fb-book-section-intro p{margin-top:20px;line-height:1.8;font-size:17px}
.fb-book-spread{display:grid;grid-template-columns:235px 1fr;gap:48px;align-items:center;margin-bottom:85px}
.fb-book-spread:nth-of-type(even){grid-template-columns:1fr 235px}
.fb-book-spread:nth-of-type(even) .fb-book-spread-copy{order:2}
.fb-book-index{font:500 45px/1 BookCaveat,cursive;color:#bc623b;display:block;margin-bottom:10px}
.fb-book-spread h3{font-size:30px;margin-bottom:17px}
.fb-book-spread p{font-size:15px;line-height:1.75}
.fb-book-open-spread{display:grid;grid-template-columns:1fr 1fr;position:relative;background:white;box-shadow:0 16px 35px #194e4921,0 1px 3px #3555541c;transform:rotate(-1deg)}
.fb-book-spread:nth-of-type(even) .fb-book-open-spread{transform:rotate(1deg)}
.fb-book-open-spread:after{content:'';position:absolute;pointer-events:none;left:48.5%;top:0;width:3%;height:100%;background:linear-gradient(90deg,transparent,#10353620 50%,transparent)}
.fb-book .fb-book-note{font-size:13px;text-align:center;margin-top:-38px}
.fb-book-stickers{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-top:45px;padding-bottom:70px;position:relative}
.fb-book-stickers:before{content:'';z-index:-1;position:absolute;inset:-10px calc((1180px - 100vw)/2) 0;background:#e6f4ed;border-radius:48% 18% 37% 14%/3% 2% 4% 3%}
.fb-book-hand-number{font:500 85px/1 BookCaveat,cursive;color:#bc623b;display:block;margin-bottom:10px}
.fb-book-stickers h2{max-width:400px}
.fb-book-stickers p{max-width:440px;margin-top:25px;line-height:1.8}
.fb-book-sticker-sheet{max-width:325px;justify-self:center;transform:rotate(5deg);box-shadow:0 14px 25px #27564b24;background:white}
.fb-book-journey{padding-top:100px}
.fb-book-journey ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.fb-book-stage{height:300px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:35px}
.fb-book-paper{width:175px;transform:rotate(-5deg);box-shadow:0 8px 18px #214e5927}
.fb-book-phone{width:150px;padding:5px;border:2px solid #184b58;border-radius:26px;background:#184b58;overflow:hidden;transform:rotate(4deg);box-shadow:4px 8px 20px #214e5926}
.fb-book-phone img{border-radius:20px}
.fb-book-tank{width:100%;height:250px;background:url('/book/aquarium.webp') center/cover;border-radius:45% 55% 50% 46%/50% 45% 53% 50%;display:flex;align-items:center;justify-content:center}
.fb-book-tank img{width:95%;height:90%;object-fit:contain;filter:drop-shadow(0 5px 4px #14365944)}
.fb-book-step-title{display:flex;align-items:center;gap:13px;margin-bottom:13px}
.fb-book-step-title span{font:400 25px/1 BookNeucha,sans-serif;display:grid;place-items:center;min-width:36px;height:36px;background:#e1eee5;border-radius:45% 53% 47% 44%}
.fb-book-step-title h3{font-size:28px}
.fb-book-journey li>p{font-size:15px;line-height:1.75}
.fb-book-entry{background:#d9eee6;max-width:1100px;text-align:center;border-radius:48% 10% 39% 12%/4% 5% 3% 4%;padding-top:55px;padding-bottom:55px}
.fb-book-entry p{max-width:580px;margin:20px auto 28px}
.fb-book-entry .fb-book-text-link{display:block;width:max-content;margin:23px auto 0}
.fb-book-faq{max-width:880px}
.fb-book-faq h2{margin-bottom:30px}
.fb-book-faq details{border-bottom:1px solid #d5ddd3;padding:20px 0}
.fb-book-faq summary{cursor:pointer;font-size:18px;color:var(--book-ink);padding-right:20px}
.fb-book-faq details p{padding:15px 20px 2px 0;font-size:16px;line-height:1.8}
.fb-book .fb-footer{background:#edf4ea}
@media(max-width:1000px){.fb-book-hero{gap:12px;padding-inline:30px}.fb-book-cover-scene{padding-inline:25px;min-height:490px}.fb-book .fb-book-cover{width:300px}.fb-book-spread{grid-template-columns:190px 1fr;gap:25px}.fb-book-spread:nth-of-type(even){grid-template-columns:1fr 190px}.fb-book-stickers{gap:40px}.fb-book-stickers:before{inset:0 -40px}.fb-book-journey ol{gap:24px}}
@media(max-width:700px){.fb-book .fb-header{padding:10px 22px;gap:12px}.fb-book .fb-wordmark{width:115px;height:52px}.fb-book .fb-header nav{display:none}.fb-book .fb-breadcrumbs{padding-inline:24px;font-size:11px}.fb-book-hero{display:flex;flex-direction:column;padding:20px 25px 35px;gap:18px}.fb-book-hero-copy{align-self:stretch}.fb-book .fb-book-hero h1{font-size:70px;margin-bottom:18px}.fb-book .fb-book-hero h2{font-size:34px}.fb-book .fb-book-lead{font-size:16px}.fb-book-actions{gap:13px 20px}.fb-book a.fb-book-open{font-size:22px;padding:12px 21px 12px 14px;min-height:66px;width:100%}.fb-book-actions{align-items:stretch}.fb-book-actions .fb-book-text-link{margin:5px auto 0}.fb-book-facts{margin-top:28px;gap:35px}.fb-book-facts dt{font-size:32px}.fb-book-facts dd{font-size:12px}.fb-book-cover-scene{min-height:0;width:100%;padding:24px 35px 30px;margin-top:5px}.fb-book .fb-book-cover{width:min(65vw,310px)}.fb-book .fb-book-swimmer{width:125px;bottom:8px;left:0}.fb-book-water-orbit{inset:12px 5px 10px}.fb-book-section{padding:55px 24px}.fb-book-section-intro{margin-bottom:32px}.fb-book-section-intro p{font-size:16px}.fb-book-spread,.fb-book-spread:nth-of-type(even){display:flex;flex-direction:column;gap:24px;margin-bottom:52px;align-items:stretch}.fb-book-spread:nth-of-type(even) .fb-book-spread-copy{order:0}.fb-book-spread-copy{display:grid;grid-template-columns:40px 1fr;gap:4px 12px}.fb-book-index{grid-row:span 2;font-size:35px;margin:0}.fb-book-spread h3{font-size:27px;margin:0}.fb-book-spread p{grid-column:2;font-size:14px}.fb-book-open-spread{margin-inline:-8px}.fb-book .fb-book-note{margin-top:-16px;font-size:12px}.fb-book-stickers{grid-template-columns:1fr;gap:30px;padding:45px 28px}.fb-book-hand-number{font-size:68px}.fb-book-sticker-sheet{max-width:275px}.fb-book-stickers p{margin-top:17px}.fb-book-journey ol{display:flex;flex-direction:column;gap:42px}.fb-book-journey li{max-width:380px;margin:auto;width:100%}.fb-book-stage{height:265px;margin-bottom:20px}.fb-book-paper{width:155px}.fb-book-phone{width:140px}.fb-book-tank{max-width:310px;height:250px}.fb-book-journey li>p{margin-left:49px}.fb-book-entry{margin-inline:14px;padding:42px 22px}.fb-book-faq summary{font-size:16px}.fb-book-faq details p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.fb-book,.fb-book *{scroll-behavior:auto!important;transition:none!important}}
