:root{--ink:#10243c;--blue:#2e9bc8;--aqua:#dff4f4;--gold:#f4c45b;--cream:#fffcf6;--navy:#062a45;--orange:#ec864d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.8}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.skip-link{position:fixed;z-index:10;top:-100px;left:1rem;padding:.5rem 1rem;color:#fff;background:#000}
.skip-link:focus{top:1rem}
.container{width:min(1180px,calc(100% - 48px));margin:0 auto}
.fcl-header{position:sticky;z-index:5;top:0;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px;padding:0 max(24px,calc((100vw - 1240px)/2));color:#fff;background:rgba(5,27,44,.94);backdrop-filter:blur(14px)}
.fcl-brand{display:flex;align-items:center;gap:10px;font-size:.84rem;font-weight:800;letter-spacing:.12em}
.fcl-brand img{width:38px;height:38px;object-fit:contain}
.fcl-header nav{display:flex;gap:clamp(12px,2vw,28px);font-size:.78rem;font-weight:700}
.fcl-header nav a{opacity:.86}
.fcl-header nav a:hover{opacity:1}
.header-home{font-size:.78rem;font-weight:800;letter-spacing:.08em}
.header-home span{margin-left:5px;color:#8cd8ee}
.fcl-hero{position:relative;min-height:min(790px,calc(100vh - 76px));overflow:hidden;color:#fff;background:#112b3f}
.fcl-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.fcl-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,37,.82),rgba(3,22,37,.3) 57%,rgba(3,22,37,.06)),linear-gradient(0deg,rgba(3,22,37,.68),transparent 46%)}
.fcl-hero-inner{position:relative;z-index:1;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:clamp(100px,16vh,170px) 0 90px}
.fcl-kicker{margin:0 0 12px;font-size:.76rem;font-weight:900;letter-spacing:.16em}
.fcl-kicker.blue{color:#277fa7}
.fcl-kicker.gold{color:#ffe096}
.fcl-title-logo{width:min(255px,55vw);margin-bottom:20px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}
.fcl-hero h1,.fcl-section h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;line-height:1.25}
.fcl-hero h1{margin:0;font-size:clamp(2.7rem,6.2vw,5.9rem);text-shadow:0 4px 16px rgba(0,0,0,.32)}
.fcl-hero-copy{margin:25px 0 0;font-size:clamp(1rem,1.45vw,1.25rem);font-weight:600;text-shadow:0 2px 8px #000}
.fcl-hero-actions{display:flex;align-items:center;gap:23px;margin-top:34px}
.fcl-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 24px;border-radius:999px;font-size:.88rem;font-weight:800;letter-spacing:.04em}
.fcl-button-light{color:var(--ink);background:#fff}
.fcl-button-dark{color:#fff;background:var(--navy)}
.fcl-text-link{font-size:.87rem;font-weight:800}
.fcl-text-link span{margin-left:8px}
.hero-note{position:absolute;z-index:1;right:34px;bottom:24px;margin:0;font-size:.72rem;letter-spacing:.08em;opacity:.8}
.fcl-section{padding:clamp(75px,10vw,130px) 0}
.intro{background:linear-gradient(170deg,#fff 0,#fff 68%,#e8f7fa 100%)}
.intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(400px,1.1fr);gap:45px;align-items:center}
.fcl-section h2{margin:0 0 24px;font-size:clamp(2.25rem,4.4vw,4.6rem);letter-spacing:.02em}
.fcl-section h2 em{font-style:normal;color:#2b9ac6}
.intro p:not(.fcl-kicker){max-width:570px;font-size:1rem}
.intro-phones{position:relative;height:460px}
.phone{position:absolute;width:205px;border:8px solid #083f49;border-radius:27px;box-shadow:0 20px 36px rgba(10,39,55,.22)}
.phone-list{left:3%;bottom:20px;transform:rotate(-9deg)}
.phone-detail{z-index:1;left:34%;top:0;transform:rotate(4deg)}
.phone-calendar{right:1%;bottom:0;transform:rotate(9deg)}
.features{background:#e9f7f8}
.section-heading{max-width:750px;margin-bottom:38px}
.feature-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.feature-card{overflow:hidden;border-radius:25px;background:#fff;box-shadow:0 13px 28px rgba(36,80,93,.12)}
.feature-card img{width:100%;height:250px;object-fit:cover;object-position:top}
.feature-card>div{padding:21px}
.feature-card span{color:#e68451;font-size:.8rem;font-weight:900;letter-spacing:.13em}
.feature-card h3{margin:5px 0 8px;font-size:1.25rem}
.feature-card p{margin:0;color:#4a5d6c;font-size:.89rem}
.feature-record,.feature-map,.feature-search{grid-column:span 4}
.feature-tackle,.feature-backup{grid-column:span 6}
.feature-tackle img,.feature-backup img{height:220px}
.history{background:#fff}
.history-layout{display:grid;grid-template-columns:1fr minmax(240px,.7fr);gap:70px;align-items:center}
.history-copy h2{margin-bottom:6px;font-family:inherit;font-size:clamp(2.1rem,4vw,4rem);color:#e1844b}
.history-copy h2 span{color:#12334f}
.history-copy h3{margin:0 0 22px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(1.8rem,3.5vw,3.2rem);font-weight:500;line-height:1.4}
.history-layout>img{max-height:520px;margin:auto;border:10px solid #073f4b;border-radius:34px;box-shadow:0 24px 44px rgba(16,51,64,.2)}
.compatibility{padding-top:0;background:#fff}
.compatibility-card{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;padding:36px;border-radius:28px;background:#0b334f;color:#fff}
.compatibility-card h2{margin:0;font-size:2.3rem;color:#fff}
.compatibility-card strong{display:block;color:#8ed9ec;font-size:1.1rem}
.compatibility-card p{margin:8px 0 0;color:#d7e7ed;font-size:.86rem}
.campfire{position:relative;overflow:hidden;color:#fff;background:#0a2d43}
.campfire-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,31,.76),rgba(2,20,31,.3)),url("../assets/campfire/campfire-lake-sunset.png") center/cover}
.campfire-inner{position:relative}
.campfire h2{color:#fff}
.campfire h2 em{color:#ffd47e}
.campfire-lead{max-width:730px;font-size:1.05rem}
.review-status{display:inline-flex;flex-wrap:wrap;gap:10px;margin:24px 0 18px;padding:10px 14px;border:1px solid rgba(255,255,255,.45);border-radius:14px;background:rgba(6,27,42,.55);font-size:.83rem}
.review-status b{color:#ffd47e}
.review-status span{color:#e0edf2}
.campfire-link{display:inline-flex;margin:0 0 34px}
.return-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.return-grid article{min-width:0;padding:15px 11px;text-align:center;border:1px solid rgba(255,255,255,.35);border-radius:17px;background:rgba(255,255,255,.92);color:var(--ink)}
.return-grid .tester{border:2px solid #f2c458;background:#fffdf5}
.return-grid img{width:47px;height:47px;margin:0 auto 8px;object-fit:contain}
.return-grid b,.return-grid small{display:block}
.return-grid b{font-size:.8rem}
.return-grid small{margin-top:3px;color:#d56f39;font-size:.67rem;font-weight:800}
.return-grid p{margin:8px 0 0;color:#53616e;font-size:.68rem;line-height:1.45}
.return-condition{margin:20px 0 0;padding:14px 17px;border-radius:15px;background:rgba(0,0,0,.28);font-size:.8rem;line-height:1.75}
.schedule{background:#fff}
.schedule h2{max-width:680px}
.schedule-list{position:relative;display:grid;gap:0;max-width:900px;margin:44px 0 0;padding:0;list-style:none}
.schedule-list:before{position:absolute;top:20px;bottom:20px;left:123px;width:2px;content:"";background:#aad9e3}
.schedule-list li{position:relative;display:grid;grid-template-columns:110px 1fr;gap:30px;padding:0 0 29px}
.schedule-list time{position:relative;z-index:1;align-self:start;padding:6px 10px;color:#0e4266;font-size:.82rem;font-weight:900;text-align:center;border-radius:999px;background:#e0f4f5}
.schedule-list b{font-size:1.12rem}
.schedule-list p{margin:5px 0 0;color:#556574;font-size:.9rem}
.schedule-note{margin:18px 0 0;color:#687582;font-size:.78rem}
.lab{color:#fff;background:linear-gradient(125deg,#061d31,#083e5c 65%,#0c6874)}
.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);gap:58px;align-items:center}
.lab h2{color:#fff;font-size:clamp(2.8rem,5.3vw,5.4rem)}
.lab h2 em{color:#f7cf70}
.lab-tagline{margin:0 0 23px;color:#ffdd8e;font-size:1.25rem;font-weight:800}
.lab p:not(.fcl-kicker){max-width:670px;color:#dbeaf1}
.lab-small{padding-top:15px;font-size:.84rem;border-top:1px solid rgba(255,255,255,.25)}
.lab-visual{position:relative;margin:auto}
.lab-visual img{width:240px;border:9px solid #052a3d;border-radius:30px;box-shadow:0 20px 35px rgba(0,0,0,.4)}
.lab-visual span{position:absolute;right:-25px;bottom:24px;padding:8px 12px;color:#0f2940;background:#ffe194;font-size:.7rem;font-weight:900;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.fcl-final{padding:95px 0;text-align:center;background:linear-gradient(#e6f5f6,#fff)}
.fcl-final p{margin:0;color:#277fa7;font-weight:900;letter-spacing:.1em}
.fcl-final h2{margin:14px 0 29px;font-size:clamp(2.3rem,4vw,4.2rem);color:var(--ink)}
.fcl-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(24px,calc((100vw - 1180px)/2));color:#c7e1e8;background:#071f31;font-size:.78rem}
.fcl-footer a{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.09em}
.fcl-footer img{width:30px;height:30px}
@media (max-width:900px){.fcl-header nav{display:none}
.intro-grid,.history-layout,.lab-layout{grid-template-columns:1fr}
.intro-phones{max-width:550px;margin:auto}
.feature-record,.feature-map,.feature-search{grid-column:span 6}
.return-grid{grid-template-columns:repeat(3,1fr)}
.compatibility-card{grid-template-columns:1fr}
.schedule-list:before{left:105px}
.schedule-list li{grid-template-columns:94px 1fr;gap:22px}
}
@media (max-width:620px){.container,.fcl-hero-inner{width:min(100% - 32px,560px)}
.fcl-header{min-height:66px;padding:0 16px}
.fcl-brand span{display:none}
.header-home{font-size:.7rem}
.fcl-hero{min-height:690px}
.fcl-hero>img{object-position:60% center}
.fcl-hero-overlay{background:linear-gradient(90deg,rgba(3,22,37,.82),rgba(3,22,37,.3) 90%),linear-gradient(0deg,rgba(3,22,37,.7),transparent 48%)}
.fcl-hero-inner{padding:100px 0 72px}
.fcl-hero h1{font-size:3rem}
.fcl-hero-actions{align-items:flex-start;flex-direction:column;gap:16px}
.hero-note{right:16px;bottom:15px}
.fcl-section{padding:74px 0}
.intro-phones{height:410px}
.phone{width:175px;border-width:6px}
.phone-list{left:0}
.phone-detail{left:31%}
.phone-calendar{right:0}
.feature-grid{grid-template-columns:1fr}
.feature-card,.feature-record,.feature-map,.feature-search,.feature-tackle,.feature-backup{grid-column:auto}
.feature-card img{height:220px}
.history-layout{gap:32px}
.history-layout>img{max-height:430px}
.compatibility-card{padding:27px 22px}
.return-grid{grid-template-columns:repeat(2,1fr)}
.return-grid article{padding:12px 8px}
.schedule-list:before{left:0}
.schedule-list li{grid-template-columns:1fr;padding-left:20px}
.schedule-list time{justify-self:start}
.lab-layout{gap:30px}
.lab-visual img{width:205px}
.fcl-footer{display:block;text-align:center}
.fcl-footer a{justify-content:center;margin-bottom:9px}
}
@media (max-width:360px){.phone{width:153px}
.intro-phones{height:360px}
.fcl-hero h1{font-size:2.65rem}
}
