@import url('https://fonts.googleapis.com/css2?family=Yellowtail&display=swap');
@font-face{font-family:'Hand';src:url('../fonts/hand.otf') format('opentype');font-display:swap}
:root{--green:#173b32;--green2:#0d2d27;--cream:#f4efe4;--paper:#fffdf8;--rust:#a84428;--gold:#bf9861;--ink:#1f2926;--serif:'Noto Serif JP','Yu Mincho',serif;--sans:'Noto Sans JP','Hiragino Kaku Gothic ProN',sans-serif;--script:'Yellowtail','Snell Roundhand',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:20px;line-height:2;letter-spacing:.09em;background:var(--paper)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{width:min(1140px,calc(100% - 80px));margin:auto}.section{position:relative;padding:140px 0}.section-light{background:var(--paper)}.section-dark{background:var(--green);color:#fff}.section-cream{background:var(--cream)}.section-rust{background:var(--rust);color:#fff}.script{font-family:var(--script);font-size:30px;line-height:1;color:var(--rust);letter-spacing:.05em;margin:0 0 22px;text-transform:none}.section-dark .script,.section-rust .script,.light .script{color:#e4b169}.section-head{text-align:center;margin-bottom:78px}.section-head h2{font-family:var(--serif);font-size:clamp(31px,4vw,52px);line-height:1.65;letter-spacing:.12em;margin:0}.section-head.light{color:#fff}.wave-bottom{padding-bottom:190px}.wave-bottom:after{content:"";position:absolute;z-index:2;bottom:-1px;left:0;width:100%;height:75px;background:var(--green);clip-path:path('M0 45 Q 220 0 440 42 T 880 38 T 1320 40 T 1760 34 L 2000 90 L 0 90 Z')}.proof.wave-bottom:after{background:var(--green)}.solution.wave-bottom:after,.expert.wave-bottom:after{background:var(--paper)}.slant-bottom{clip-path:polygon(0 0,100% 0,100% 95%,0 100%);padding-bottom:210px}.slant-top{clip-path:polygon(0 5%,100% 0,100% 100%,0 100%);padding-top:190px}
.floating-cta{position:fixed;right:0;bottom:24px;z-index:50;width:126px;height:126px;border-radius:42px 0 0 42px;background:#e4ae3f;color:var(--green2);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;letter-spacing:.15em;box-shadow:0 10px 35px #0003;transition:.3s}.floating-cta:hover{width:142px;background:#f3c75f}.floating-cta span{font-family:var(--serif)}
.hero{position:relative;height:100svh;min-height:760px;color:#fff;background: url(./fvv.jpg) center center / cover no-repeat;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(transparent,#081d19c4)}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #ffffff44;position:relative;z-index:2;font-size:12px;letter-spacing:.2em}.logo{font-family:var(--script);font-size:28px;letter-spacing:.02em}.logo b{font-family:var(--sans);font-size:12px;display:block;letter-spacing:.24em}.nav>a:last-child{display:flex;gap:22px}.hero-copy{position:absolute;z-index:2;left:50%;top:44%;transform:translate(-50%,-50%);width:94vw;max-width:1400px;text-align:center}.hero-sub{display:block;font-family:'Hand',var(--serif);font-size:clamp(60px,8vw,120px);line-height:1.05;color:#fff;margin:0 auto 12px;letter-spacing:.04em;white-space:nowrap;text-shadow:0 4px 22px #0007}.hero h1{font-family:var(--serif);margin:20px 0 18px;white-space:nowrap;text-shadow:0 4px 25px #0007}.hero h1 span,.hero h1 strong{display:block}.hero h1 span{font-size:clamp(20px,2.2vw,48px);font-weight:500;line-height:1.5;letter-spacing:.18em}.hero h1 strong{font-size:clamp(34px,4.4vw,66px);font-weight:700;line-height:1.5;letter-spacing:.13em}.hero-logo{width:clamp(105px,10vw,155px);height:auto;margin:10px auto 0;object-fit:contain;filter:drop-shadow(0 4px 12px #0006)}.hero-points{position:absolute;z-index:3;bottom:52px;left:50%;transform:translateX(-50%);width:min(1050px,84vw);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff66}.hero-points div{display:flex;align-items:center;justify-content:center;padding:26px 20px 0}.hero-points div+div{border-left:1px solid #ffffff55}.hero-points span{font-family:var(--serif);font-size:clamp(17px,1.55vw,23px);font-weight:600;letter-spacing:.11em;white-space:nowrap}.scroll{position:absolute;z-index:4;left:2vw;bottom:45px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.3em}.scroll i{height:50px;border-left:1px solid #fff;margin-top:10px}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.proof-grid h3{height:95px;font-family:var(--serif);font-size:27px;line-height:1.6;text-align:center;margin:0 0 25px}.proof-grid mark{background:linear-gradient(transparent 64%,#d9b06b80 0);color:inherit}.proof-grid figure{height:360px;margin:0;border:1px solid var(--gold);padding:9px;border-radius:52% 52% 9px 9px;box-shadow:12px 12px 0 #bf986126}.proof-grid figure img{border-radius:52% 52% 5px 5px}.proof-grid p{text-align:left;margin:28px 0 0;font-family:var(--serif)}
.problem-list{display:grid;gap:80px}.problem-list article{display:grid;grid-template-columns:1fr 1.05fr;gap:85px;align-items:center}.problem-list article:nth-child(even){direction:rtl}.problem-list article:nth-child(even)>*{direction:ltr}.problem-list img{height:390px;clip-path:polygon(8% 0,100% 5%,93% 100%,0 91%);filter:saturate(.75) contrast(1.05)}.problem-text span{font-family:var(--script);font-size:70px;color:#d2a45e;line-height:1}.problem-text h3{font-family:var(--serif);font-size:30px;letter-spacing:.14em;margin:14px 0 30px}.problem-text p{color:#e8eee9;line-height:2.2}.problem-text p+p{margin-top:18px}
.solution{text-align:center}.solution-inner>h2{font-family:var(--serif);font-size:clamp(32px,4.4vw,58px);line-height:1.65;letter-spacing:.14em;margin:25px 0}.eyebrow{display:inline-block;margin:0;padding:8px 22px;border-radius:999px;background:#fff;color:var(--rust);font-size:16px;font-weight:700;letter-spacing:.16em}.formula{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin:65px auto 45px}.formula span{width:200px;height:200px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:23px;letter-spacing:.12em}.formula b{font-size:28px;font-weight:300}.formula em{width:100%;font-family:var(--serif);font-style:normal;font-size:25px}.product-stage{height:auto;margin:45px auto 0;width:min(900px,100%);border:1px solid #ffffff77;padding:12px;clip-path:polygon(3% 0,100% 0,97% 100%,0 96%)}
.features{padding:150px 0 80px}.feature-row{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center;padding:90px 0 150px;border-bottom:1px solid #173b3230}.feature-row.reverse .feature-copy{order:2}.feature-row.reverse .feature-body{order:1}.feature-copy{text-align:center}.feature-copy h2{font-family:var(--serif);font-size:clamp(27px,3vw,41px);line-height:1.65;letter-spacing:.13em;margin:0}.feature-copy hr{width:100%;border:0;border-top:1px solid var(--gold);margin:28px auto}.feature-copy h3{font-family:var(--serif);font-size:30px;line-height:1.9;letter-spacing:.12em}.compare{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px;margin-top:42px}.compare figure{height:195px;margin:0;position:relative;overflow:hidden}.compare figure:after{content:"";position:absolute;inset:0;border:1px solid var(--gold)}.compare figcaption{position:absolute;bottom:0;left:0;right:0;background:#173b32e8;color:#fff;padding:10px 4px;font-size:17px;line-height:1.4;z-index:2;letter-spacing:.08em}.compare figure:nth-of-type(2) figcaption{background:#df6b32;color:#fff;font-weight:700}.feature-body{position:relative;padding:70px 0 0}.big-num{position:absolute;top:0;left:-20px;font-family:var(--script);font-size:135px;color:#a8442816;line-height:1}.feature-body p{line-height:2.25;margin:0 0 28px}
.factory{overflow:hidden}.factory:before{content:"";position:absolute;right:-8vw;top:-8vw;width:32vw;height:32vw;border:1px solid #bf98614d;border-radius:50%;box-shadow:0 0 0 55px #bf98610c,0 0 0 110px #bf98610c}.factory-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:100px;align-items:center}.factory-visual{position:relative;min-height:650px}.factory-main{position:absolute;left:0;top:0;width:82%;height:510px;margin:0;padding:9px;border:1px solid var(--gold);background:var(--cream);clip-path:polygon(0 0,100% 3%,95% 100%,4% 96%)}.factory-main img,.factory-sub img{filter:saturate(.72) contrast(1.06)}.factory-sub{position:absolute;right:0;bottom:0;width:58%;height:310px;margin:0;padding:8px;background:var(--paper);border:1px solid var(--gold);box-shadow:-22px -22px 0 #173b3212;clip-path:polygon(5% 0,100% 5%,96% 100%,0 94%)}.factory-seal{position:absolute;left:2%;bottom:18px;width:145px;height:145px;border:1px solid var(--rust);border-radius:50%;background:var(--cream);color:var(--rust);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.35;transform:rotate(-8deg);box-shadow:0 0 0 5px var(--cream),0 0 0 6px var(--rust)}.factory-seal b{font-size:9px;letter-spacing:.25em}.factory-seal strong{font:600 23px var(--serif);letter-spacing:.13em}.factory-seal span{font-size:10px}.factory-copy{position:relative;z-index:1}.factory-copy h2{font-family:var(--serif);font-size:clamp(34px,4vw,52px);line-height:1.65;letter-spacing:.13em;margin:0 0 34px}.factory-lead{font-family:var(--serif);font-size:20px;color:var(--rust);line-height:1.9;margin-bottom:28px}.factory-copy>p:not(.script):not(.factory-lead){line-height:2.15;margin:0 0 18px}.factory-notes{display:flex;gap:10px;margin:35px 0}.factory-notes span{flex:1;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:11px 6px;text-align:center;color:var(--green);font:600 12px var(--serif);letter-spacing:.14em}.factory address{font-style:normal;font-size:16px;line-height:1.8}.factory address small{font-size:16px; display:block;color:#1f2926;font-weight:700;letter-spacing:.18em}
.product-spec{overflow:hidden;border-top:1px solid #bf986147}.product-spec:before{content:'SPECIFICATION';position:absolute;right:-25px;top:80px;writing-mode:vertical-rl;font:600 82px/1 var(--serif);letter-spacing:.08em;color:#173b3209}.product-spec-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.product-spec-visual{position:relative}.product-spec-visual figure{height:590px;margin:0;padding:14px;border:1px solid var(--gold);background:var(--cream);border-radius:48% 48% 5px 5px;box-shadow:22px 22px 0 #173b320b}.product-spec-visual figure img{border-radius:48% 48% 2px 2px;object-position:center}.spec-index{position:absolute;left:-28px;top:40px;z-index:2;writing-mode:vertical-rl;font-size:9px;letter-spacing:.26em;color:var(--rust)}.spec-caption{text-align:center;margin:25px 0 0;font:600 10px var(--serif);letter-spacing:.28em;color:var(--rust)}.spec-logo{width:120px;height:auto;margin:24px auto 0;object-fit:contain}.product-spec-copy{position:relative;z-index:1}.product-spec-copy h2{font-family:var(--serif);font-size:clamp(36px,4vw,54px);line-height:1.6;letter-spacing:.14em;margin:0 0 38px}.spec-list{margin:0;border-top:1px solid #173b3240}.spec-list>div{display:grid;grid-template-columns:125px 1fr;gap:25px;padding:20px 5px;border-bottom:1px solid #173b3240;align-items:start}.spec-list dt{font:600 18px var(--serif);color:var(--rust);letter-spacing:.15em}.spec-list dd{margin:0;line-height:1.9}.spec-list dd strong{font-family:var(--serif);font-size:17px;color:var(--green)}.flavor-list{display:flex;flex-wrap:wrap;gap:9px}.flavor-list span{display:inline-flex;align-items:center;min-height:34px;padding:5px 15px;border:1px solid transparent;color:#fff;font:600 14px/1.4 var(--serif);letter-spacing:.08em}.flavor-list .plain{background:#d7ad64;border-color:#d7ad64}.flavor-list .chocolate{background:#5f3e34;border-color:#5f3e34}.flavor-list .matcha{background:#71835d;border-color:#71835d}.spec-note{font-size:16px;color:#67716d;margin-top:18px}
.expert-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}.expert-grid figure{height:620px;margin:0;border:1px solid var(--gold);padding:10px;border-radius:48% 48% 4px 4px}.expert-grid figure img{border-radius:48% 48% 2px 2px}.expert h2{font-family:var(--serif);font-size:43px;letter-spacing:.12em;margin:0 0 35px}.person{display:flex;align-items:center;gap:25px;padding:22px 0;border-top:1px solid #ffffff55;border-bottom:1px solid #ffffff55}.person b{font-family:var(--serif);font-size:27px;color:#e8bb71}.person span{font-size:15px;line-height:1.75}.expert blockquote{margin:36px 0 0;padding:0;font-family:var(--serif);color:#edf1ee}.expert blockquote p{margin:0 0 18px}.expert-em{background:linear-gradient(transparent 70%, rgba(250,204,21,0.6) 90%);font-weight:700;color:#fff;display:inline}
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.voice-grid article{background:#fff;border:1px solid #173b3230;padding:45px 35px 35px;position:relative;margin-top:70px}.voice-grid article:before{content:'“';position:absolute;right:20px;top:8px;font-family:var(--serif);font-size:90px;color:#b98b4e38;line-height:1}.avatar{width:118px;height:118px;border-radius:50%;margin:-105px auto 22px;background-image:url('');background-size:200% 200%;border:6px solid var(--paper);box-shadow:0 5px 20px #0002}.avatar-1{background-position:100% 0}.avatar-2{background-position:0 100%}.avatar-3{background-position:100% 100%}.voice-grid .meta{text-align:center;font-size:12px;color:var(--rust);font-weight:700;letter-spacing:.15em}.voice-grid article>p:last-child{font-family:var(--serif);line-height:2.1}
.pricing{padding-bottom:190px;overflow:hidden}.pricing:before{content:'PRICE';position:absolute;left:-20px;bottom:40px;font:600 180px/1 var(--serif);letter-spacing:.06em;color:#ffffff07}.pricing-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;margin-bottom:70px}.pricing-intro figure{height:380px;margin:0;padding:9px;border:1px solid var(--gold);clip-path:polygon(4% 0,100% 5%,96% 100%,0 94%)}.pricing-intro img{object-position:center}.pricing-lead{font:600 24px/1.8 var(--serif);letter-spacing:.12em;color:#e9bd75}.pricing-intro>div>p:not(.pricing-lead){color:#e6ece9;line-height:2.2}.pricing-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.pricing-tags span{border:1px solid #fff;background:transparent;padding:9px 15px;font:600 14px/1.5 var(--sans);letter-spacing:.08em;color:#fff}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.price-card{position:relative;background:var(--paper);color:var(--ink);padding:48px 52px 42px;border-radius:18px}.price-card.original{background:var(--rust);color:#fff}.plan-label{font-size:14px;letter-spacing:.18em;color:var(--rust);margin:0}.original .plan-label{color:#f2d096}.price-card h3{margin:8px 0 4px;font-family:var(--serif);line-height:1}.price-card h3 strong{font-size:68px;letter-spacing:.02em}.price-card h3 span{font-size:30px;margin-left:8px}.price{margin:25px 0 18px;font-family:var(--serif);font-size:18px;color:var(--rust)}.price b{font-size:34px}.price small{font-size:18px}.original-copy{font:500 17px/1.9 var(--serif);margin:26px 0 20px}.original-copy b{font-size:21px;color:#f4d49c}.price-card hr{border:0;border-top:1px solid #173b3233;margin:25px 0}.price-card.original hr{border-color:#ffffff55}.price-card>p:not(.plan-label):not(.price):not(.original-copy){line-height:2}.price-card ul{list-style:none;margin:30px 0 0;padding:0}.price-card li{padding:13px 0 13px 24px;border-top:1px solid #173b3225;font-size:15px;line-height:1.8;position:relative}.price-card.original li{border-color:#ffffff35}.price-card li:before{content:'◎';position:absolute;left:2px;top:15px;color:var(--rust);font-weight:700}.price-card.original li:before{color:#f4d49c}.price-note{text-align:center;font-size:15px;color:#b9c5c0;margin:30px 20px 0}
.faq-list{max-width:900px}.faq details{border-top:1px solid #173b3266}.faq details:last-child{border-bottom:1px solid #173b3266}.faq summary{list-style:none;cursor:pointer;padding:27px 0px 27px 0px;font-family:var(--serif);font-size:17px;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'＋';position:absolute;right:15px;top:27px;font-family:var(--sans);font-size:20px;transition:.35s}.faq details[open] summary:after{transform:rotate(45deg)}.faq summary span,.faq details>div>span{color:var(--rust);font-family:var(--script);font-size:26px;margin-right:4px}.faq details>div{display:flex;padding:0 35px 30px 0px;animation:fadeDown .4s ease}.faq details>div p{margin:0;line-height:2}@keyframes fadeDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.contact h2{font-family:var(--serif);font-size:clamp(38px,4.5vw,50px);line-height:1.55;letter-spacing:.12em}.contact .lead{font-family:var(--serif);font-size:18px;margin-top:40px}.contact form{background:var(--paper);color:var(--ink);padding:48px}.contact label{display:grid;gap:7px;font-size:14px;font-weight:700;letter-spacing:.13em;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact input,.contact select,.contact textarea{width:100%;border:0;border-bottom:1px solid #173b3255;background:#f5f1e9;padding:14px 15px;font:inherit;font-size:14px;border-radius:0}.contact textarea{resize:vertical}.contact button{width:100%;border:0;background:var(--green);color:#fff;padding:22px;font:700 15px var(--serif);letter-spacing:.18em;cursor:pointer;transition:.3s}.contact button:hover{background:#265c4e}.contact button span{float:right}.contact form small{display:block;text-align:left; width: fit-content; margin-inline: auto;line-height:1.8;margin-top:14px}.contact button.sent{background:#806d46}
.vision{min-height:850px;display:grid;place-items:center;background:linear-gradient(#00000052,#00000070),url('./vision.jpg') center/cover fixed;color:#fff;padding:130px 20px}.vision>div{width:min(760px,85vw);text-align:center}.vision h2{font-family:var(--serif);font-size:clamp(30px,4vw,39px);letter-spacing:.13em;margin:25px 0 55px}.vision-copy{text-align:left;display:inline-block;font-family:var(--serif);line-height:2.25}.vision-copy p{margin:0 0 24px}.vision .script{color:#fff}
footer{background:#fff;color:var(--ink);display:grid;grid-template-columns:.85fr 1.35fr auto;gap:50px;padding:80px 7vw 45px;align-items:end;border-top:1px solid #173b3220}.footer-logo{display:block;width:150px;margin-bottom:22px}.footer-logo img{width:100%;height:auto;object-fit:contain}.footer-brand>p:nth-child(2){font-family:var(--serif);color:var(--green)}.footer-info{font-size:12px;line-height:1.9;color:#4f5b57}.footer-product{margin:0 0 12px;font:600 16px var(--serif);letter-spacing:.16em;color:var(--rust)}.footer-info address{font-style:normal;margin:0}.footer-info address span{display:block}.footer-info address b{display:inline-block;margin-right:10px;color:var(--green);font-family:var(--serif);letter-spacing:.16em}.footer-note{margin:12px 0 18px;color:#6c7773}footer nav{display:flex;gap:25px;flex-wrap:wrap;font-size:10px;color:var(--green)}footer small{font-size:9px;color:#7c8783}
@media(max-width:800px){body{font-size:16px}.container{width:calc(100% - 40px)}.section{padding:90px 0}.section-head{margin-bottom:50px}.section-head h2{font-size:28px; padding: 0px 15px;}.script{font-size:25px}.wave-bottom{padding-bottom:125px}.slant-bottom{padding-bottom:130px}.slant-top{padding-top:125px}.floating-cta{width:86px;height:86px;border-radius:28px 0 0 28px;bottom:16px;font-size:11px}.hero{min-height:680px;height:92svh;background-position:62% center}.nav{height:74px}.nav>a:last-child{font-size:9px}.hero-copy{left:50%;top:42%;max-width:none;width:96vw}.hero-sub{font-size:clamp(48px,15vw,74px);white-space:normal;margin-bottom:8px}.hero h1{white-space:normal;margin:14px 0 12px}.hero h1 span{font-size:clamp(15px,4.2vw,20px);letter-spacing:.08em}.hero h1 strong{font-size:clamp(25px,7vw,34px);letter-spacing:.06em}.hero-logo{width:105px;margin-top:8px}.hero-points{width:96vw;bottom:35px}.hero-points div{display:flex;text-align:center;padding:16px 4px 0}.hero-points span{font-size:clamp(11px,3.2vw,14px);line-height:1.45;letter-spacing:.02em;white-space:normal}.scroll{display:none}.proof-grid{grid-template-columns:1fr;gap:50px}.proof-grid article:nth-child(2){margin-top:0}.proof-grid h3{height:auto}.proof-grid figure{height:340px}.problem-list{gap:90px}.problem-list article,.problem-list article:nth-child(even){grid-template-columns:1fr;gap:25px;direction:ltr}.problem-list img{height:260px;grid-row:1}.problem-text span{font-size:55px}.problem-text h3{font-size:24px}.solution-inner>h2{font-size:30px}.formula{gap:8px}.formula span{width:85px;height:85px;font-size:14px}.formula b{font-size:18px}.product-stage{height:auto;}.features{padding:60px 0}.feature-row,.feature-row.reverse{grid-template-columns:1fr;gap:30px;padding:70px 0 100px}.feature-row.reverse .feature-copy,.feature-row.reverse .feature-body{order:initial}.feature-copy h2{font-size:26px}.feature-body{padding-top:45px}.big-num{font-size:100px}.compare figure{height:150px}.factory-grid{grid-template-columns:1fr;gap:55px}.factory-visual{min-height:470px}.factory-main{width:88%;height:360px}.factory-sub{width:58%;height:225px}.factory-seal{width:105px;height:105px;bottom:8px}.factory-seal strong{font-size:17px}.factory-copy h2{font-size:29px}.factory-lead{font-size:17px}.factory-notes span{font-size:10px;letter-spacing:.07em}.product-spec-grid{grid-template-columns:1fr;gap:55px}.product-spec-visual{width:min(420px,92%);margin:auto}.product-spec-visual figure{height:430px}.product-spec-copy h2{font-size:30px}.spec-list>div{grid-template-columns:90px 1fr;gap:15px;padding:17px 3px}.spec-list dt{font-size:15px}.expert-grid{grid-template-columns:1fr;gap:45px}.expert-grid figure{height:440px}.expert h2{font-size:28px}.person{align-items:flex-start}.voice-grid{grid-template-columns:1fr;gap:75px}.pricing{padding-bottom:120px}.pricing-intro{grid-template-columns:1fr;gap:35px;margin-bottom:45px}.pricing-intro figure{height:280px}.pricing-lead{font-size:19px}.pricing-tags{flex-wrap:wrap}.price-grid{grid-template-columns:1fr}.price-card{padding:38px 25px 32px}.price-card h3 strong{font-size:54px}.faq summary{font-size:14px;padding-right:45px}.contact-grid{grid-template-columns:1fr;gap:50px}.contact form{padding:28px 20px}.form-row{grid-template-columns:1fr;gap:0}.vision{min-height:auto;background-attachment:scroll}.vision h2{font-size:27px;line-height:1.6; width: fit-content; margin-inline: auto; text-align: left;}footer{grid-template-columns:1fr;padding-bottom:120px}.sp{display:block}}
@media(min-width:801px){.sp{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}.vision{background-attachment:scroll}}

/* FV copy hierarchy */
.nav-brand{display:block;width:clamp(118px,11vw,168px);height:auto}
.nav-brand img{width:100%;height:auto;object-fit:contain;padding-bottom:20px}
.hero-copy{top:82px;transform:translateX(-50%)}
.hero-copy .hero-sub{font-size:clamp(60px,8vw,120px);margin:0 0 8px}
.hero-copy h1{margin:0;font-size:clamp(22px,2.25vw,34px);font-weight:500;line-height:1.5;letter-spacing:.19em}
.hero-copy h1 .number{font-size:clamp(52px,5vw,82px);font-weight:700;line-height:.9;letter-spacing:.04em;vertical-align:-.08em}
.hero-copy .hero-logo{width:clamp(90px,8vw,125px);margin:16px auto 0}

@media(max-width:800px){
  .nav-brand{width:115px}
  .hero-copy{top:90px;transform:translateX(-50%)}
  .hero-copy .hero-sub{font-size:clamp(43px,13vw,64px);margin-bottom:6px}
  .hero-copy .hero-logo{width:82px;margin-top:11px}
  .number {
    font-size: 27px !important;
  }
}

/* Keep the product bright; shade only the text zones. */
.hero{background:url('./fvv.jpg') center/cover no-repeat}
.hero:before{content:"";position:absolute;z-index:1;inset:0 0 auto;height:38%;background:transparent;pointer-events:none}
.hero:after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:29%;background:linear-gradient(180deg,transparent 0%,#d4773533 42%,#a8442875 100%);pointer-events:none}
.hero-copy .hero-sub{display:table;width:auto;padding:0 24px 18px;background:#b84f2ce6;box-shadow:8px 8px 0 #f0a34c55;line-height:.82;transform:translateY(-8px)}
.hero-copy h1{display:inline-block;padding:7px 5px 14px;background:#b84f2cde;text-shadow:none}
.hero-points{text-shadow:0 2px 8px #3a160f99}
.hero h1 span, .hero h1 strong {
  display: inline-block;
}

/* Refined orange copy labels */
.hero-copy .hero-sub,.hero-copy h1{position:relative;isolation:isolate;background:none;box-shadow:none}
.hero-copy .hero-sub:before,.hero-copy h1:before{content:"";position:absolute;z-index:-1;pointer-events:none}
.hero-copy .hero-sub:after,.hero-copy h1:after{content:"";position:absolute;z-index:-2;pointer-events:none}
.hero-copy .hero-sub:before{inset:-12px -18px -4px;background:linear-gradient(105deg,#d66e3d 0%,#b74328 100%);clip-path:polygon(2% 0,100% 7%,97% 100%,0 89%);transform:rotate(-1deg)}
.hero-copy .hero-sub:after{inset:-12px -18px -4px;background:#f0a34c99;clip-path:polygon(2% 0,100% 7%,97% 100%,0 89%);transform:translate(8px,8px) rotate(-1deg)}
.hero-copy h1:before{inset:0 -12px -4px;background:linear-gradient(90deg,#9f3925d9,#bd542fd9);border:1px solid #f1b2709c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);clip-path:polygon(1% 0,100% 0,98.5% 100%,0 93%)}
.hero-copy h1:after{inset:0 -12px -4px;background:#e9934e8f;clip-path:polygon(1% 0,100% 0,98.5% 100%,0 93%);transform:translate(7px,7px)}
.hero-copy h1{text-shadow:0 1px 3px #4c170f66}
.hero-points{gap:14px;border-top:0}
.hero-points div{position:relative;padding:15px 18px;background:linear-gradient(135deg,#ffe1b9ed,#f6bd7ce8);color:#70291d;border:1px solid #fff3df;border-radius:999px;clip-path:none;box-shadow:inset 0 1px 0 #ffffffd9,0 9px 25px #4a1e162e;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.hero-points div+div{border-left:1px solid #fff3df}
.hero-points span{line-height:1.5;text-shadow:none;font-weight:700;letter-spacing:.08em}
.hero-points div>span{position:relative;display:inline-block;text-align:center}
.hero-points div>span:before{content:'✔︎';position:absolute;right:calc(100% + 6px);top:50%;color:#b74328;font:700 48px/1 var(--serif);text-shadow:2px 2px 0 #fff3df,0 5px 12px #4a1e1626;transform:translateY(-52%) rotate(-9deg)}

@media(max-width:800px){
  .hero{background-image:url('../images/fv-sm.jpg');background-position:center;background-size:cover}
  .hero-points{gap:5px}
  .hero-points div{padding:12px 4px 10px;border-radius:18px}
  .hero-points span{font-size:17px;line-height:1.4;letter-spacing:.01em}
  .hero-points div>span:before{right:calc(100% + 2px);font-size:24px;text-shadow:1px 1px 0 #fff3df,0 3px 8px #4a1e1626}
  
}

/* Vertical feature stories with side-by-side comparisons. */
.feature-row,.feature-row.reverse{grid-template-columns:1fr;gap:48px;width:min(900px,calc(100% - 80px));padding:100px 0 140px}
.feature-row.reverse .feature-copy,.feature-row.reverse .feature-body{order:initial}
.feature-copy{width:100%}
.feature-copy .compare{width:min(760px,100%);margin:48px auto 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.compare-item{min-width:0}
.compare-item figure{height:260px}
.compare-item:nth-child(2) figcaption{background:#df6b32;color:#fff;font-weight:700}
.compare-note{margin:15px 0 0;padding:10px 8px;font:600 18px/1.5 var(--serif);letter-spacing:.07em;border-radius:999px}
.compare-note.bad{color:#6d716e;}
.compare-note.good{color:#df6b32;}
.feature-body{width:min(760px,100%);margin:auto;padding:65px 20px 0;text-align:left}
.feature-body .big-num{left:0}

@media(max-width:800px){
  .feature-row,.feature-row.reverse{width:calc(100% - 40px);gap:28px;padding:70px 0 100px}
  .feature-copy .compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:34px}
  .compare-item figure{height:150px}
  .compare figcaption{font-size:15px;padding:8px 3px}
  .compare-note{font-size:15px;padding:8px 3px;letter-spacing:0}
  .feature-body{padding:45px 0 0}
  .feature-copy h3 {font-size: 22px;}
}


.high-light {
  background: linear-gradient(transparent 70%, rgba(250,204,21,0.6) 90%);
  font-weight: bold;
  display: inline;
}

/* Lower legal pages */
.sub-page{background:var(--paper)}
.sub-header{background:var(--green);color:#fff;position:relative;overflow:hidden}
.sub-header:after{content:"";position:absolute;right:-10vw;bottom:-16vw;width:36vw;height:36vw;border:1px solid #bf98614d;border-radius:50%;box-shadow:0 0 0 60px #bf98610c,0 0 0 120px #bf98610c}
.sub-header .nav{border-bottom:1px solid #ffffff2e}
.sub-hero{position:relative;z-index:1;padding:115px 0 125px;text-align:center}
.sub-hero h1{font-family:var(--serif);font-size:clamp(33px,4vw,54px);line-height:1.55;letter-spacing:.13em;margin:0}
.legal-section{padding:95px 0 125px}
.legal-container{max-width:920px}
.legal-lead{margin:0 0 55px;font-family:var(--serif);line-height:2.1}
.legal-list{margin:0;border-top:1px solid #173b3240}
.legal-list>div{display:grid;grid-template-columns:250px 1fr;gap:38px;padding:27px 4px;border-bottom:1px solid #173b3240}
.legal-list dt{font:600 17px var(--serif);letter-spacing:.14em;color:var(--rust)}
.legal-list dd{margin:0;line-height:2}
.policy-block{padding:34px 0;border-top:1px solid #173b3240}
.policy-block:last-of-type{border-bottom:1px solid #173b3240}
.policy-block h2{margin:0 0 18px;font-family:var(--serif);font-size:22px;line-height:1.65;letter-spacing:.11em;color:var(--rust)}
.policy-block p{margin:0 0 16px;line-height:2}
.policy-block ul{margin:0;padding-left:1.2em;line-height:2}
.policy-address{font-style:normal;line-height:2}
.back-link{display:inline-block;margin-top:55px;padding:15px 30px;background:var(--green);color:#fff;font:700 14px var(--serif);letter-spacing:.15em}

@media(max-width:800px){
  .sub-hero{padding:82px 0 92px}
  .legal-section{padding:70px 0 95px}
  .legal-lead{margin-bottom:38px}
  .legal-list>div{grid-template-columns:1fr;gap:8px;padding:22px 0}
  .legal-list dt{font-size:15px}
  .policy-block{padding:27px 0}
  .policy-block h2{font-size:18px}
  .back-link{width:100%;text-align:center}
}

/* Proven results section */
.master{overflow:hidden;border-top:1px solid #bf986147}
.master:before{content:'100+';position:absolute;left:-20px;top:35px;font:600 190px/1 var(--serif);letter-spacing:.02em;color:#173b3208}
.master .section-head h2{position:relative;display:inline-block;padding:0 clamp(78px,8vw,130px)}
.master .section-head h2:before,.master .section-head h2:after{content:"";position:absolute;top:50%;width:clamp(70px,9vw,135px);height:clamp(78px,10vw,150px);background:center/contain no-repeat;transform:translateY(-50%);pointer-events:none}
.master .section-head h2:before{right:calc(100% - clamp(86px,8vw,126px));background-image:url('../images/lwing.png')}
.master .section-head h2:after{left:calc(100% - clamp(86px,8vw,126px));background-image:url('../images/rwing.png')}
.master-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.master-visual{position:relative;min-height:560px}
.master-main,.master-sub{position:absolute;margin:0;padding:10px;border:1px solid var(--gold);background:var(--paper)}
.master-main{left:0;top:0;width:78%;height:430px;clip-path:polygon(4% 0,100% 4%,96% 100%,0 94%);box-shadow:24px 24px 0 #173b320d}
.master-sub{right:0;bottom:0;width:58%;height:260px;clip-path:polygon(0 6%,96% 0,100% 92%,5% 100%);box-shadow:-18px -18px 0 #d9b06b24}
.master-main img,.master-sub img{filter:saturate(.86) contrast(1.05)}
.master-copy{position:relative;z-index:1}
.master-stats{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:10px}
.master-stats div{background:linear-gradient(135deg,#df6b32 0%,#a84428 100%);color:#fff;padding:28px 24px;border-radius:26px 26px 4px 26px;box-shadow:0 16px 38px #a8442826}
.master-stats div:nth-child(2){background:var(--rust);border-radius:26px 26px 26px 4px}
.master-stats span{display:block;font:700 22px var(--serif);letter-spacing:.18em;color:white;margin-bottom:8px}
.master-stats strong{font:700 clamp(54px,6vw,82px)/1 var(--serif);letter-spacing:.02em}
.master-stats b{font:700 27px var(--serif);margin-left:6px}
.master-period{margin:0 0 34px;text-align:right;font-size:12px;line-height:1.5;color:#7b8581;letter-spacing:.08em}
.master-lead{font:600 23px/1.9 var(--serif);letter-spacing:.12em;color:var(--rust);margin:0 0 30px}
.master-list{list-style:none;margin:0;padding:0;border-top:1px solid #173b3233}
.master-list li{position:relative;padding:16px 0 16px 30px;border-bottom:1px solid #173b3233;font-family:var(--serif);line-height:1.7}
.master-list li:before{content:'◎';position:absolute;left:0;top:16px;color:var(--serif);font-weight:700;}
.master-note{margin:24px 0 0;font-size:15px;color:#1f2926;;line-height:2}

@media(max-width:800px){
  .master:before{font-size:105px;top:25px}
  .master .section-head h2{padding:0 54px;font-size:23px}
  .master .section-head h2:before,.master .section-head h2:after{width:58px;height:78px;opacity:.95}
  .master .section-head h2:before{right:calc(100% - 54px)}
  .master .section-head h2:after{left:calc(100% - 54px)}
  .master-grid{grid-template-columns:1fr;gap:46px}
  .master-visual{min-height:430px}
  .master-main{width:86%;height:310px}
  .master-sub{width:62%;height:190px}
  .master-stats{grid-template-columns:1fr;gap:12px}
  .master-stats div{padding:24px 22px;border-radius:22px}
  .master-stats span{font-size:19px}
  .master-stats strong{font-size:56px}
  .master-stats b{font-size:24px}
  .master-lead{font-size:18px}
  .master-list li{font-size:15px;padding-left:26px}
}

/* Customer voices: many short, real comments. */
.voices{overflow:hidden}
.voices .voice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.voices .voice-grid article{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;margin-top:0;min-height:230px;padding:30px 28px 30px;background:linear-gradient(145deg,#fffdf8 0%,#fff7ea 100%);border:1px solid #d9b06b6b;border-radius:30px 30px 30px 8px;box-shadow:0 18px 45px #173b3211}
.voices .voice-grid article:nth-child(2),.voices .voice-grid article:nth-child(5){transform:translateY(28px)}
.voices .voice-grid article:nth-child(3n){background:linear-gradient(145deg,#ffffff 0%,#f5efe4 100%)}
.voices .voice-grid article:before{display: none; :"";position:absolute;left:24px;bottom:-15px;top:auto;right:auto;width:30px;height:30px;background:inherit;border-left:1px solid #d9b06b6b;border-bottom:1px solid #d9b06b6b;border-radius:0 0 0 8px;clip-path:polygon(0 0,100% 0,0 100%);font-size:0;color:transparent}
.voice-icon{position:relative;width:54px;height:54px;border-radius:50%;background:#f8c98a;box-shadow:inset 0 1px 0 #fff8,0 8px 18px #a8442826}
.voice-icon:before{content:"";position:absolute;left:50%;top:12px;width:17px;height:17px;border-radius:50%;background:#fff7ea;transform:translateX(-50%)}
.voice-icon:after{content:"";position:absolute;left:50%;bottom:9px;width:30px;height:17px;border-radius:18px 18px 8px 8px;background:#fff7ea;transform:translateX(-50%)}
.voices .voice-grid article>p:last-child{position:relative;z-index:1;margin:0;font-size:16px;line-height:2.05;letter-spacing:.08em}

@media(max-width:800px){
  .voices .voice-grid{grid-template-columns:1fr;gap:18px}
  .voices .voice-grid article,.voices .voice-grid article:nth-child(2),.voices .voice-grid article:nth-child(5){transform:none;min-height:auto;grid-template-columns:46px 1fr;gap:14px;padding:24px 20px 24px;border-radius:24px 24px 24px 8px}
  .voice-icon{width:46px;height:46px}
  .voice-icon:before{top:10px;width:14px;height:14px}
  .voice-icon:after{bottom:8px;width:25px;height:14px}
  .voices .voice-grid article>p:last-child{font-size:15px;line-height:2}
}

.middle-text {
  text-align: left;
  line-height: 2.5;
  width: fit-content;
  margin-inline: auto;
}

.price-card.original .price {
  color: #fff;
}

/* Cleaner angled section boundaries without anti-aliased white gaps. */
.slant-bottom{clip-path:none;overflow:hidden}
.slant-bottom:after{content:"";position:absolute;z-index:1;left:0;right:0;bottom:-1px;height:100px;background:var(--rust);clip-path:polygon(0 100%,100% 42%,100% 100%,0 100%);pointer-events:none}
.slant-bottom>*{position:relative;z-index:2}
.slant-top{clip-path:none;overflow:hidden}
.slant-top:before{content:"";position:absolute;z-index:1;left:0;right:0;top:-1px;height:100px;background:var(--green);clip-path:polygon(0 0,100% 0,100% 42%,0 100%);pointer-events:none}
.slant-top>*{position:relative;z-index:2}

/* Motion */
.nav-brand,.nav>a:last-child,.hero-copy .hero-sub,.hero-copy h1,.hero-points div,.floating-cta{animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) both}
.nav-brand{animation-delay:.12s}
.nav>a:last-child{animation-delay:.2s}
.hero-copy .hero-sub{animation-delay:.34s}
.hero-copy h1{animation-delay:.5s}
.hero-points div:nth-child(1){animation-delay:.86s}
.hero-points div:nth-child(2){animation-delay:.98s}
.hero-points div:nth-child(3){animation-delay:1.1s}
.floating-cta{animation-delay:1.28s}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
.reveal.is-visible{opacity:1;transform:none}
.product-stage.reveal,.factory-visual.reveal,.master-visual.reveal,.product-spec-visual.reveal,.expert-grid figure.reveal{transform:translateY(38px) scale(.985)}
.product-stage.reveal.is-visible,.factory-visual.reveal.is-visible,.master-visual.reveal.is-visible,.product-spec-visual.reveal.is-visible,.expert-grid figure.reveal.is-visible{transform:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){
  .nav-brand,.nav>a:last-child,.hero-copy .hero-sub,.hero-copy h1,.hero-points div,.floating-cta{animation:none!important}
  .reveal{opacity:1!important;transform:none!important;transition:none!important}
}

.hero-copy .hero-sub{visibility:hidden;animation:none}
.hero-copy .hero-sub:before,.hero-copy .hero-sub:after{content:none;opacity:0}
.nav-brand,.nav>a:last-child,.hero-copy h1,.hero-points div,.floating-cta{visibility:hidden;animation:none}
.hero-bg-ready .nav-brand{visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) .86s both}
.hero-bg-ready .nav>a:last-child{visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) .94s both}
.hero-bg-ready .hero-copy h1{visibility:visible;animation:headlineBandIn .9s cubic-bezier(.18,.8,.18,1) 1.2s both}
.hero-bg-ready .hero-points div:nth-child(1){visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) 1.58s both}
.hero-bg-ready .hero-points div:nth-child(2){visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) 1.7s both}
.hero-bg-ready .hero-points div:nth-child(3){visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) 1.82s both}
.hero-bg-ready .floating-cta{visibility:visible;animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) 2s both}
.hero-bg-ready.fonts-ready .hero-copy .hero-sub{visibility:visible;animation:labelBandIn .9s cubic-bezier(.18,.8,.18,1) 1.02s both}
.hero-bg-ready.fonts-ready .hero-copy .hero-sub:before,.hero-bg-ready.fonts-ready .hero-copy .hero-sub:after{content:"";opacity:1}
@keyframes heroCoverOut{from{opacity:1}to{opacity:0}}
.hero:before{content:"";position:absolute;z-index:4;inset:0;height:auto;background:#0b211d;pointer-events:none}
.hero-bg-ready .hero:before{animation:heroCoverOut .8s ease-out both}
@keyframes labelBandIn{0%{opacity:0;clip-path:inset(-20px 100% -20px -30px);transform:translateY(-8px)}35%{opacity:1}100%{opacity:1;clip-path:inset(-20px -30px -20px -30px);transform:translateY(-8px)}}
@keyframes headlineBandIn{0%{opacity:0;clip-path:inset(-18px 100% -18px -24px)}35%{opacity:1}100%{opacity:1;clip-path:inset(-18px -24px -18px -24px)}}

@media(prefers-reduced-motion:reduce){
  .hero-bg-ready .nav-brand,.hero-bg-ready .nav>a:last-child,.hero-bg-ready .hero-copy h1,.hero-bg-ready .hero-points div,.hero-bg-ready .floating-cta{animation:none!important}
  .hero-bg-ready .hero:before{opacity:0!important;animation:none!important}
  .fonts-ready .hero-copy .hero-sub{animation:none!important}
}
