
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#1b3b5f;--lime:#c2e9fb;--cream:#f6fbff;--ink:#18344e;--muted:#697f92;--line:#dce8f0}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;color:var(--ink);background:var(--cream);font:15px 'DM Sans',Arial,sans-serif}
button,input,select,textarea{font:inherit}
a{color:inherit;text-decoration:none}
button,a,input,select,textarea{outline-offset:5px}
button{cursor:pointer}
.wrap{max-width:1240px;margin:auto;padding:0 48px}
.topbar{background:var(--green);color:#d4dfd6;font-size:11px;letter-spacing:.4px;padding:10px 0}
.topbar .wrap{display:flex;justify-content:space-between}
.topbar span:before{content:'●';color:var(--lime);font-size:8px;margin-right:8px}
header{position:sticky;top:0;z-index:20;background:rgba(247,246,240,.97);border-bottom:1px solid var(--line)}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px}
.mark{width:44px;height:44px;background:var(--green);color:#e8cc87;display:grid;place-items:center;font-size:29px;font-family:Georgia,serif;font-weight:bold;border-radius:2px}
.brand b{font:800 19px Manrope,Arial;letter-spacing:-.8px}
.brand small{display:block;font-size:9px;letter-spacing:2.1px;margin-top:3px}
.links{display:flex;gap:27px;font-size:13px}
.links a:hover{color:#8b702f}
.button{border:0;border-radius:4px;padding:15px 21px;background:var(--green);color:white;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:24px;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px);background:#285a46}
.button.light{background:var(--lime);color:var(--green)}
.button.outline{background:transparent;border:1px solid #b4beb3;color:var(--green)}
.arrow{font-size:20px;line-height:1}
.mobile{display:none}
.hero{padding:58px 0 0}
.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:44px;align-items:center}
.eyebrow{display:flex;align-items:center;gap:9px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.7px}
.eyebrow:before{content:'';width:22px;height:1px;background:currentColor}
h1,h2,h3{font-family:Manrope,Arial,sans-serif}
h1{font-size:clamp(40px,4.5vw,64px);line-height:1.1;font-weight:600;letter-spacing:-3.2px;margin:24px 0}
h1 em{font-style:normal;color:#658160}
p{line-height:1.75;color:var(--muted)}
.hero-copy>p{max-width:430px;font-size:15px}
.cta{display:flex;gap:12px;margin:28px 0}
.hero-note{display:flex;align-items:center;gap:11px;font-size:11px;color:var(--muted);margin-top:24px}
.hero-note i{font-style:normal;border:1px solid #c8d1c0;border-radius:50%;height:23px;width:23px;display:grid;place-items:center;color:var(--green)}
.hero-image{height:465px;position:relative;background:#c4cabe;border-radius:7px;overflow:hidden}
.hero-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.55)}
.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,41,33,.45),transparent 60%)}
.image-label{position:absolute;bottom:23px;left:24px;z-index:2;color:white;font-size:11px;letter-spacing:1px}
.year{position:absolute;top:23px;right:23px;z-index:2;background:var(--cream);padding:20px;border-radius:3px}
.year b{font:600 29px Manrope;display:block}
.year small{font-size:9px;text-transform:uppercase;letter-spacing:1px}
.strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:47px;padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.strip div{display:flex;gap:17px;align-items:center;padding-left:34px;border-left:1px solid var(--line)}
.strip div:first-child{border:0;padding-left:0}
.strip strong{font:600 27px Manrope;letter-spacing:-1px}
.strip small{color:var(--muted);font-size:11px;line-height:1.5}
.section{padding:85px 0}
h2{font-size:36px;line-height:1.25;letter-spacing:-1.4px;font-weight:600;margin:16px 0}
.heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.heading p{max-width:340px;font-size:13px;margin-bottom:4px}
.tabs{display:flex;gap:8px;margin-bottom:25px}
.tab{border:1px solid var(--line);border-radius:30px;padding:9px 19px;color:var(--muted);background:transparent;font-size:12px}
.tab.active{background:var(--green);border-color:var(--green);color:white}
.products{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.product{background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .2s}
.product:hover{transform:translateY(-4px)}
.product-photo{height:260px;background:#eeefe8;position:relative;display:flex;align-items:center;justify-content:center}
.product-photo img{height:220px;width:72%;object-fit:contain;mix-blend-mode:multiply}
.badge{position:absolute;left:18px;top:18px;font-size:9px;letter-spacing:1.2px;background:white;padding:7px 10px;border-radius:2px}
.product-info{padding:25px}
.product-info h3{font-size:22px;margin:0}
.product-info p{font-size:13px;margin:12px 0}
.product-bottom{border-top:1px solid var(--line);margin-top:18px;padding-top:17px;display:flex;justify-content:space-between;align-items:center}
.product-bottom span{font-size:11px;color:var(--muted)}
.text-button{border:0;background:none;color:var(--green);font-size:12px;font-weight:700;display:flex;gap:20px;align-items:center}
.services{background:var(--green);color:var(--cream)}
.services p{color:#b9cac0}
.services .eyebrow{color:var(--lime)}
.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:42px}
.service{border-top:1px solid #4b6558;padding:26px 0 8px}
.service .num{font-size:11px;color:var(--lime)}
.service svg{height:35px;width:35px;display:block;margin:25px 0;color:var(--lime)}
.service h3{font-size:20px;font-weight:500;margin:16px 0}
.service p{font-size:13px}
.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:80px;align-items:start}
.since{border:1px solid #c7d1bc;padding:42px;position:relative;background:#e9eee1;border-radius:5px}
.since .big{font:500 83px Manrope;letter-spacing:-5px;line-height:1.2}
.since p{font-size:13px;margin-bottom:30px}
.since hr{border:0;border-top:1px solid #c7d1bc}
.since .location{font-size:12px;line-height:1.8;margin-top:23px}
.about-text p{font-size:14px}
.steps{display:flex;gap:20px;margin-top:28px;border-top:1px solid var(--line);padding-top:23px}
.steps div{flex:1}
.steps b{display:block;font-size:11px;color:#859574;margin-bottom:10px}
.steps span{font-size:12px}
.inquiry{background:#eeefe7}
.form-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.contact-box{margin-top:29px;padding-top:25px;border-top:1px solid #d4d8cd;font-size:13px;line-height:1.9}
.contact-box b{display:block;font-size:12px;margin-bottom:7px}
.instagram{display:inline-flex;align-items:center;gap:14px;margin-top:22px;font-weight:600;font-size:12px}
.form{padding:32px;background:#fafbf7;border:1px solid var(--line);border-radius:6px}
.form h3{margin:0 0 8px;font-size:20px}
.form>p{font-size:12px;margin:0 0 25px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1/-1}
label{font-size:11px;font-weight:600}
input,select,textarea{width:100%;background:white;border:1px solid #d9dfd2;border-radius:3px;padding:12px;color:var(--ink);font-size:13px}
input:focus,select:focus,textarea:focus{border-color:#60815b}
textarea{resize:vertical;min-height:90px}
.consent{display:flex;align-items:flex-start;gap:9px;margin:19px 0;font-size:10px;color:var(--muted);line-height:1.6}
.consent input{width:auto;margin-top:2px}
.form .button{width:100%}
.status{font-size:12px;margin-top:14px;line-height:1.7}
.status:empty{display:none}
.faq-grid{display:grid;grid-template-columns:.7fr 1fr;gap:80px}
details{border-bottom:1px solid var(--line);padding:19px 0}
summary{list-style:none;display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-size:14px;font-weight:500}
summary:after{content:'+';font-size:21px;font-weight:400}
details[open] summary:after{content:'−'}
details p{font-size:13px;margin-bottom:3px}
.closing{background:var(--lime);padding:45px 0}
.closing .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}
.closing h2{margin:0;font-size:28px}
.closing p{font-size:12px;margin-bottom:0}
footer{background:var(--green);color:var(--cream);padding:40px 0 20px}
.footer-top{display:flex;justify-content:space-between;gap:25px}
.footer-top p{font-size:12px;color:#b9cac0;max-width:290px}
.footer-links{display:flex;gap:32px;align-items:start;font-size:12px}
.copyright{border-top:1px solid #456254;padding-top:19px;margin-top:32px;display:flex;justify-content:space-between;font-size:10px;color:#b9cac0}
.chat-toggle{position:fixed;bottom:24px;right:25px;z-index:50;border:1px solid #6b826a;box-shadow:0 5px 24px #183d3230}
.chat-toggle svg{width:20px;height:20px}
.chat{position:fixed;bottom:88px;right:25px;width:365px;max-width:calc(100vw - 30px);border-radius:9px;overflow:hidden;background:white;box-shadow:0 12px 60px #10291f40;border:1px solid var(--line);z-index:51}
.chat[hidden]{display:none}
.chat-head{background:var(--green);color:white;padding:19px;display:flex;justify-content:space-between;align-items:center}
.chat-head b{font-size:14px}
.chat-head small{display:block;font-size:10px;margin-top:5px;color:var(--lime)}
.close{background:none;border:0;color:white;font-size:24px}
.messages{height:270px;overflow:auto;padding:16px;background:#f7f8f3}
.msg{white-space:pre-wrap;font-size:12px;line-height:1.7;padding:12px 14px;background:white;border:1px solid var(--line);border-radius:7px;margin-bottom:10px;max-width:95%}
.msg.user{margin-left:auto;background:#e2eccc}
.quick{display:flex;gap:6px;flex-wrap:wrap;padding:12px 15px 0}
.quick button{background:#f4f6ee;border:1px solid var(--line);font-size:10px;padding:7px 10px;border-radius:20px}
.chat-form{display:flex;gap:8px;padding:13px}
.chat-form button{padding:10px 15px}
.chat-note{font-size:9px;text-align:center;padding:0 15px 13px;color:var(--muted)}
.honey{position:absolute;left:-9999px}
body:has(.chat:not([hidden])) .chat-toggle{background:#285a46}
@media(min-width:1500px){.wrap{max-width:1340px}
}
@media(max-width:950px){.wrap{padding:0 26px}
.links{gap:17px}
.nav>.button{display:none}
.hero-grid{gap:25px}
h1{font-size:47px}
.hero-image{height:430px}
.about-grid,.form-grid,.faq-grid{gap:35px}
.strip strong{font-size:23px}
.strip div{padding-left:18px}
.hero .cta{flex-wrap:wrap}
.service-list{gap:20px}
}
@media(max-width:650px){.wrap{padding:0 22px}
.topbar .wrap>div:last-child{display:none}
.nav{height:73px}
.mobile{display:block;background:none;border:1px solid var(--line);padding:7px 11px;color:var(--green);font-size:20px}
.links{display:none;position:absolute;top:73px;left:0;right:0;background:var(--cream);padding:23px;box-shadow:0 10px 20px #0001}
.links.open{display:flex;flex-direction:column}
.hero{padding-top:35px}
.hero-grid{grid-template-columns:1fr;gap:30px}
h1{font-size:47px;letter-spacing:-2.7px;max-width:400px}
.hero-copy>p{font-size:14px}
.hero-image{height:330px}
.strip{margin-top:30px;padding:21px 0}
.strip div{display:block;padding-left:12px}
.strip strong{font-size:22px;display:block;margin-bottom:5px}
.strip small{font-size:9px}
.section{padding:55px 0}
h2{font-size:29px}
.heading{display:block}
.heading p{margin-top:16px}
.products,.service-list,.about-grid,.form-grid,.faq-grid{grid-template-columns:1fr}
.product-photo{height:245px}
.service-list{gap:12px;margin-top:25px}
.service{display:grid;grid-template-columns:45px 1fr;gap:0 14px;padding-top:20px}
.service .num{grid-column:1}
.service svg{grid-column:1;grid-row:2;margin:12px 0}
.service h3{grid-column:2;grid-row:2}
.service p{grid-column:2;margin-top:0}
.since{padding:30px}
.about-grid,.form-grid,.faq-grid{gap:30px}
.form{padding:22px}
.fields{gap:15px}
.field{grid-column:1/-1}
.closing .wrap,.footer-top{display:block}
.closing .button{margin-top:22px}
.footer-links{margin-top:26px;flex-wrap:wrap;gap:20px}
.copyright{gap:20px;line-height:1.8}
.chat-toggle{bottom:16px;right:16px;padding:13px 17px}
.chat{bottom:78px;right:15px}
.chat-toggle .chat-label{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}

/* Premium light-blue theme */
:root { --blue:#83c9ef; --navy:#153859; --soft-blue:#eaf6ff; --bright-blue:#087cb9; }
body { background:#fff; -webkit-font-smoothing:antialiased; }
.wrap { max-width:1260px; }
.topbar { background:#e9f5fd; color:#45667d; font-size:10px; padding:10px 0; }
.topbar span:before { color:#259bc8; }
header { background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.nav { height:86px; }
.mark { background:var(--navy); color:var(--blue); border-radius:10px 3px 10px 3px; }
.brand b { font-size:18px; }
.brand small { color:#7393a8; }
.links a { position:relative; padding:8px 0; }
.links a.active:after { position:absolute; bottom:0; left:0; width:16px; height:2px; background:#52b6e7; content:''; }
.links a:hover,.links a.active { color:#0784bd; }
.button { background:var(--navy); border-radius:7px; padding:15px 22px; box-shadow:0 4px 10px #1438580b; }
.button:hover { background:#076b9a; }
.button.outline { border-color:#b8d6e8; background:#fff8; color:var(--navy); }
.button.outline:hover { background:#e2f3ff; }
.hero { max-width:none; padding:66px max(48px,calc((100vw - 1164px)/2)) 0; background:radial-gradient(ellipse at 8% 20%,#e7f5ff 0%,transparent 55%),#f6fbff; overflow:hidden; }
.hero-grid { gap:65px; }
h1 { font-size:clamp(44px,4.7vw,65px); font-weight:600; letter-spacing:-3.5px; margin:24px 0; }
h1 em { color:#1195cc; }
.hero .eyebrow { color:#277f9f; font-size:9px; letter-spacing:1.6px; }
.hero-copy>p { color:#5d798e; line-height:1.85; }
.hero-note { color:#688398; }
.hero-note i { color:#048ac2; border-color:#97d3ed; background:#e4f5ff; }
.hero-image { height:482px; border-radius:90px 10px 10px 10px; box-shadow:0 18px 45px #327ba221; }
.hero-image img { filter:saturate(.7); object-position:center; }
.hero-image:after { background:linear-gradient(0deg,#112e50ba,transparent 75%); }
.image-label { bottom:32px; left:32px; letter-spacing:0; }
.image-label b { display:block; font:500 28px Manrope,Arial; line-height:1.3; margin-top:13px; }
.image-caption-tag { font-size:8px; letter-spacing:2px; opacity:.8; }
.year { top:24px; right:24px; display:flex; gap:17px; align-items:center; background:#ffffffed; padding:15px 20px; box-shadow:0 8px 22px #172f4d20; border-radius:5px; }
.year b { font-size:32px; color:var(--navy); }
.year b span { font-size:20px; color:#249bd0; }
.year small { font-size:8px; color:#607d90; }
.year-icon { font-size:33px; color:#2393cc; }
.strip { margin-top:45px; border:0; border-top:1px solid #d3e5f1; padding:30px 0; }
.strip div { border-color:#d3e5f1; }
.strip strong { color:#284861; font-size:27px; }
.strip small { color:#6b8397; }
.section { padding:88px 0; }
.eyebrow { color:#2f91bb; font-size:9px; }
h2 { font-size:35px; letter-spacing:-1.5px; }
.heading p { color:#728596; }
.tabs { margin:0 0 29px; }
.tab { border-color:#d3e6f2; border-radius:6px; font-size:11px; }
.tab.active { background:#e4f4ff; border-color:#98d5f3; color:#147baa; }
.product { border-color:#dceaf3; box-shadow:0 8px 28px #3e71850b; border-radius:12px; }
.product-photo { background:radial-gradient(ellipse at 50% 50%,#fff,#eaf4fa); height:285px; }
.product-photo img { transition:transform .5s; }
.product:hover .product-photo img { transform:scale(1.06); }
.product-info { padding:27px; }
.badge { color:#62819a; background:#ffffffdd; border:1px solid #e3edf5; font-size:8px; border-radius:4px; }
.details-link { border:0; background:none; padding:8px 0; color:#218bb8; font-size:11px; display:flex; justify-content:space-between; width:100%; }
.details-link span { font-size:16px; }
.product-bottom { margin-top:12px; border-color:#e3edf5; }
.text-button { color:#1b6f9b; }
.services { background:#153859; position:relative; overflow:hidden; }
.services:before { content:''; position:absolute; width:450px; height:450px; border:1px solid #8fd3f021; border-radius:50%; right:-270px; top:-200px; pointer-events:none; }
.services .wrap { position:relative; }
.services h2 { color:#fff; }
.services p,.services .heading p { color:#abc2d5; }
.services .eyebrow,.service .num,.service svg { color:#91d4f5; }
.service { border-color:#3b5e7b; }
.service h3 { color:#f1f9ff; }
.service svg { width:39px; height:39px; }
.since { background:#ecf7ff; border:1px solid #cbe5f6; border-radius:12px; padding:40px; }
.since .big { color:#8bc9ea; font-size:85px; }
.since hr { border-color:#c8e4f4; }
.since .location { color:#426780; }
.map-link { display:inline-block; margin-top:18px; font-size:11px; color:#1989be; }
.steps { border-color:#e2edf5; }
.steps b { color:#1c9acb; }
.instagram { color:#1476a1; }
.inquiry { background:#f0f8fe; border-top:1px solid #e0eff9; border-bottom:1px solid #e0eff9; }
.contact-box { border-color:#d0e4f3; color:#628096; }
.contact-box b { color:#234d6b; }
.contact-line { display:block; margin-top:8px; color:#127cac; }
.whatsapp-link { margin-top:15px; }
.form { padding:34px; background:#fff; border-color:#d6e8f4; border-radius:12px; box-shadow:0 12px 40px #347ca410; }
label { color:#48657a; }
input,select,textarea { border-color:#d4e5f0; border-radius:6px; background:#fbfdff; }
input:focus,select:focus,textarea:focus { border-color:#41a9de; box-shadow:0 0 0 3px #8cd5ff22; }
input::placeholder,textarea::placeholder { color:#9caebb; }
.consent { color:#758d9f; }
.form .button { background:#218ec1; }
.form .button:hover { background:#12739f; }
.button:disabled { opacity:.6; cursor:wait; transform:none; }
details { border-color:#dceaf3; }
summary:hover { color:#1589b7; }
summary:after { color:#389ecd; }
.closing { background:#caeafd; border:0; }
.closing h2 { color:#224b67; }
.closing p { color:#57809b; }
footer { background:#112e49; }
footer .brand small { color:#91adc0; }
.footer-top p,.copyright { color:#92afc3; }
.footer-links a:hover { color:#9ad9fa; }
.copyright { border-color:#31516b; }
.admin-footer { display:inline-block; margin-left:15px; }
.chat-toggle { background:#238fc3; border:1px solid #82c8ec; box-shadow:0 5px 25px #167aaa35; }
body:has(.chat:not([hidden])) .chat-toggle { background:#126ba0; }
.chat { border-color:#c5e3f5; border-radius:12px; }
.chat-head { background:var(--navy); }
.chat-head small { color:#a6daf5; }
.messages { background:#f0f8fe; }
.msg { border-color:#dcebf5; color:#4a697f; }
.msg.user { background:#d6efff; border-color:#aed8f3; color:#244a66; }
.quick button { background:#eef7ff; border-color:#d0e8f8; color:#39799f; }
#back-top { position:fixed; z-index:25; bottom:95px; right:26px; width:36px; height:36px; border:1px solid #c2e1f4; border-radius:50%; background:white; color:#2589ba; box-shadow:0 4px 15px #14568011; }
#back-top[hidden] { display:none; }
.product-dialog { border:1px solid #d3e8f4; padding:0; border-radius:14px; width:740px; max-width:calc(100vw - 30px); color:var(--ink); }
.product-dialog[open] { display:grid; grid-template-columns:.8fr 1fr; }
.product-dialog::backdrop { background:#112e49aa; backdrop-filter:blur(4px); }
.dialog-image { background:#edf7fe; display:grid; place-items:center; padding:30px; }
.dialog-image img { width:100%; max-height:300px; object-fit:contain; mix-blend-mode:multiply; }
.dialog-copy { padding:45px 30px 30px; }
.dialog-copy h2 { font-size:26px; }
.dialog-copy p,.dialog-copy li { font-size:12px; line-height:1.8; }
.dialog-copy ul { padding-left:16px; color:#607f95; }
.dialog-copy .detail-note { font-size:10px; }
.dialog-close { position:absolute; top:10px; right:13px; background:none; border:0; color:#316582; font-size:25px; }
.js-reveal { opacity:0; transform:translateY(15px); transition:opacity .65s,transform .65s; }
.js-reveal.visible { opacity:1; transform:none; }
@media(min-width:1500px) { .hero { padding-left:max(48px,calc((100vw - 1164px)/2)); padding-right:max(48px,calc((100vw - 1164px)/2)); } }
@media(max-width:950px) { .hero { padding:45px 26px 0; } .hero-grid { gap:30px; } h1 { font-size:48px; } .hero-image { height:440px; } .brand b { font-size:16px; } }
@media(max-width:650px) { .nav { height:73px; } .links { background:white; } .hero { padding:36px 22px 0; } .hero-grid { gap:30px; } h1 { font-size:48px; letter-spacing:-2.8px; } .hero-image { height:350px; border-radius:60px 8px 8px 8px; } .image-label { left:25px; bottom:25px; } .image-label b { font-size:25px; } .year { top:18px; right:18px; padding:12px 16px; } .year b { font-size:25px; } .year-icon { font-size:26px; } .strip { margin-top:30px; padding:24px 0; } .strip strong { font-size:22px; } .strip small { font-size:9px; } .section { padding:55px 0; } h2 { font-size:29px; } .form,.since { padding:25px; } .service-list { margin-top:25px; } .chat-toggle .chat-label { display:none; } #back-top { right:18px; bottom:79px; } .product-dialog[open] { display:block; } .dialog-image { height:200px; } .dialog-image img { height:170px; } .dialog-copy { padding:25px; } .dialog-copy h2 { margin-top:12px; } .chat { bottom:76px; } }
@media(prefers-reduced-motion:reduce) { .js-reveal { opacity:1; transform:none; } .product-photo img { transition:none; } }
/* Keep section content aligned with the navigation and hero on every screen. */
.section.wrap { padding:88px 48px; }
@media(max-width:950px) { .section.wrap { padding:88px 26px; } }
@media(max-width:650px) {
  .section.wrap { padding:55px 22px; }
  .service .num { grid-column:1/-1; grid-row:1; }
  .service p { grid-column:2; grid-row:3; }
}
