@layer reset, tokens, layout, components, utilities;

@layer reset {
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
  body{min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;}
  img{display:block;max-width:100%;height:auto;}
  a{color:inherit;text-decoration:none;}
  button,input,textarea{font:inherit;color:inherit;}
  button{cursor:pointer;background:none;border:none;}
  ul{list-style:none;}
  table{border-collapse:collapse;width:100%;}
}

@layer tokens {
  :root{
    --bg:#f7f4ee;
    --bg-soft:#efe9df;
    --surface:#ffffff;
    --ink:#241f18;
    --ink-soft:#5c5548;
    --ink-faint:#8b8375;
    --line:#e6ded0;
    --accent:#c1552c;
    --accent-dark:#9c4220;
    --accent-soft:#f6ddce;
    --accent-2:#5c6b4f;
    --accent-2-soft:#e4e9dc;
    --r-sm:10px;
    --r-md:16px;
    --r-lg:24px;
    --r-xl:32px;
    --r-full:999px;
    --sh-1:0 1px 2px rgba(36,31,24,.06), 0 1px 1px rgba(36,31,24,.05);
    --sh-2:0 8px 20px rgba(36,31,24,.08), 0 2px 6px rgba(36,31,24,.06);
    --sh-3:0 24px 48px rgba(36,31,24,.14), 0 10px 20px rgba(36,31,24,.08);
    --sh-acc:0 10px 24px rgba(193,85,44,.28), 0 3px 8px rgba(193,85,44,.2);
    --ff-h:'Familjen Grotesk',sans-serif;
    --ff-b:'DM Sans',sans-serif;
    --tr:.25s cubic-bezier(.4,0,.2,1);
    --tr-sl:.4s cubic-bezier(.4,0,.2,1);
  }
}

@layer layout {
  body{background:var(--bg);color:var(--ink);font-family:var(--ff-b);}
  main{display:block;}
  h1,h2,h3,h4{font-family:var(--ff-h);font-weight:700;color:var(--ink);line-height:1.15;letter-spacing:-.01em;}
  .sec{padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5vw,4rem);max-width:1280px;margin:0 auto;}
  .pg-hero-inner,.hero-inner,.cta-band-inner,.cta-split-inner,.split-txt-img-inner{max-width:1280px;margin:0 auto;}
}

@layer components {


.hdr{position:fixed;top:0;left:0;right:0;z-index:200;background:var(--surface);box-shadow:var(--sh-1);transition:box-shadow var(--tr);}
.hdr.scrolled{box-shadow:var(--sh-2);}
.hdr-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;}
.hdr-logo{display:flex;align-items:center;gap:.6rem;font-family:var(--ff-h);font-weight:700;font-size:1.15rem;color:var(--ink);}
.hdr-nav{display:flex;gap:1.9rem;}
.hdr-link{font-size:.95rem;font-weight:500;color:var(--ink-soft);position:relative;padding:.4rem 0;transition:color var(--tr);}
.hdr-link::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--accent);transition:width var(--tr);border-radius:2px;}
.hdr-link:hover,.hdr-link.is-active{color:var(--ink);}
.hdr-link:hover::after,.hdr-link.is-active::after{width:100%;}
.hdr-actions{display:flex;align-items:center;gap:.7rem;}
.hdr-icon-btn{width:42px;height:42px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;background:var(--bg-soft);color:var(--ink);transition:background var(--tr),transform var(--tr);}
.hdr-icon-btn:hover{background:var(--accent-soft);color:var(--accent-dark);transform:translateY(-1px);}
.hdr-cta{background:var(--accent);color:#fff;padding:.7rem 1.3rem;border-radius:var(--r-full);font-weight:600;font-size:.9rem;box-shadow:var(--sh-acc);transition:transform var(--tr),box-shadow var(--tr),background var(--tr);}
.hdr-cta:hover{transform:translateY(-2px);background:var(--accent-dark);box-shadow:0 16px 30px rgba(193,85,44,.32);}
.hdr-burger{display:none;width:42px;height:42px;border-radius:var(--r-full);align-items:center;justify-content:center;background:var(--bg-soft);font-size:1.1rem;transition:background var(--tr);}
.hdr-burger:hover{background:var(--accent-soft);}


.search-ovl{position:fixed;inset:0;z-index:300;background:rgba(36,31,24,.5);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:12vh;opacity:0;pointer-events:none;transition:opacity var(--tr-sl);}
.search-ovl.active{opacity:1;pointer-events:auto;}
.search-box{width:min(640px,90vw);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-3);padding:1.1rem 1.4rem;display:flex;align-items:center;gap:.9rem;transform:translateY(-16px);transition:transform var(--tr-sl);}
.search-ovl.active .search-box{transform:translateY(0);}
.search-box i{color:var(--ink-faint);font-size:1.1rem;}
.search-input{flex:1;border:none;outline:none;font-size:1.05rem;background:transparent;color:var(--ink);}
.search-close{width:36px;height:36px;border-radius:var(--r-full);background:var(--bg-soft);display:flex;align-items:center;justify-content:center;transition:background var(--tr);}
.search-close:hover{background:var(--accent-soft);color:var(--accent-dark);}
.search-hint{margin-top:1rem;color:#f2ede2;font-size:.9rem;opacity:.85;}


.sheet-overlay{position:fixed;inset:0;background:rgba(36,31,24,.5);z-index:350;opacity:0;pointer-events:none;transition:opacity var(--tr-sl);}
.sheet-overlay.active{opacity:1;pointer-events:auto;}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:400;background:var(--surface);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--sh-3);padding:.8rem 1.4rem 2rem;transform:translateY(110%);transition:transform var(--tr-sl);max-height:80vh;overflow-y:auto;}
.sheet.active{transform:translateY(0);}
.sheet-handle{width:44px;height:5px;border-radius:var(--r-full);background:var(--line);margin:.4rem auto 1.2rem;}
.sheet-nav{display:flex;flex-direction:column;gap:.3rem;}
.sheet-link{display:flex;align-items:center;gap:.9rem;padding:.9rem .6rem;border-radius:var(--r-md);font-weight:600;font-size:1rem;color:var(--ink);transition:background var(--tr);}
.sheet-link i{width:22px;color:var(--accent);font-size:1.05rem;}
.sheet-link:hover{background:var(--bg-soft);}
.sheet-cta{display:block;text-align:center;margin-top:1.2rem;background:var(--accent);color:#fff;padding:.95rem;border-radius:var(--r-full);font-weight:600;box-shadow:var(--sh-acc);transition:transform var(--tr),background var(--tr);}
.sheet-cta:hover{transform:translateY(-2px);background:var(--accent-dark);}


.btn{display:inline-flex;align-items:center;gap:.55rem;padding:.9rem 1.6rem;border-radius:var(--r-full);font-weight:600;font-size:.95rem;transition:transform var(--tr),box-shadow var(--tr),background var(--tr),color var(--tr);white-space:nowrap;}
.btn-acc{background:var(--accent);color:#fff;box-shadow:var(--sh-acc);}
.btn-acc:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 18px 32px rgba(193,85,44,.32);}
.btn-ghost{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1);border:1px solid var(--line);}
.btn-ghost:hover{transform:translateY(-2px);box-shadow:var(--sh-2);}
.btn-acc-inv{background:#fff;color:var(--accent-dark);box-shadow:var(--sh-2);}
.btn-acc-inv:hover{transform:translateY(-2px);box-shadow:var(--sh-3);}


.hero{padding:clamp(7.5rem,12vw,10rem) clamp(1.25rem,5vw,4rem) clamp(3rem,6vw,5rem);background:linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 100%);}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,4vw,4rem);align-items:center;}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--accent-soft);color:var(--accent-dark);font-weight:600;font-size:.85rem;padding:.5rem 1rem;border-radius:var(--r-full);margin-bottom:1.4rem;}
.hero-title{font-size:clamp(2.4rem,5.2vw,4rem);margin-bottom:1.2rem;}
.hero-sub{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--ink-soft);max-width:52ch;margin-bottom:2rem;}
.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.6rem;}
.hero-tags{display:flex;flex-wrap:wrap;gap:1.4rem;color:var(--ink-soft);font-size:.9rem;font-weight:500;}
.hero-tags i{color:var(--accent-2);margin-right:.35rem;}
.hero-visual{position:relative;}
.hero-img{width:100%;border-radius:var(--r-xl);box-shadow:var(--sh-3);aspect-ratio:4/5;object-fit:cover;}
.hero-float{position:absolute;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--sh-3);padding:.9rem 1.2rem;display:flex;flex-direction:column;gap:.15rem;}
.hero-float-lb{font-size:.72rem;color:var(--ink-faint);font-weight:600;text-transform:uppercase;letter-spacing:.04em;}
.hero-float strong{font-family:var(--ff-h);font-size:1.15rem;color:var(--ink);}
.hero-float-a{top:8%;left:-8%;}
.hero-float-b{bottom:10%;right:-8%;}


.pg-hero{padding:clamp(7.5rem,10vw,9.5rem) 1.25rem clamp(3rem,5vw,4rem);background:linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 100%);text-align:center;}
.pg-hero-sm{padding-bottom:2.5rem;}
.pg-hero-inner{max-width:760px;margin:0 auto;}
.pg-title{font-size:clamp(2.1rem,4.4vw,3.2rem);margin-bottom:1rem;}
.pg-sub{color:var(--ink-soft);font-size:1.08rem;}
.hero-badge{display:inline-flex;}
.pg-hero .hero-badge{margin-bottom:1.1rem;}


.sec-hd{text-align:center;max-width:680px;margin:0 auto 3rem;}
.sec-eyebrow{display:inline-block;color:var(--accent-dark);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.7rem;}
.sec-title{font-size:clamp(1.7rem,3.4vw,2.5rem);margin-bottom:.9rem;}
.sec-sub{color:var(--ink-soft);font-size:1.05rem;}


.board-alt{background:var(--bg-soft);border-radius:var(--r-xl);}
.board-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.board-grid-mix{grid-template-columns:repeat(4,1fr);grid-auto-rows:auto;}
.tile{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.8rem;transition:transform var(--tr),box-shadow var(--tr);overflow:hidden;}
.tile:hover{transform:translateY(-4px);box-shadow:var(--sh-2);}
.tile-ico{width:48px;height:48px;border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent-dark);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1rem;}
.tile-title{font-size:1.1rem;margin-bottom:.5rem;}
.tile-txt{color:var(--ink-soft);font-size:.95rem;}
.tile-num{display:inline-block;font-size:.75rem;font-weight:700;color:var(--accent-dark);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem;}
.tile-lg{grid-column:span 2;grid-row:span 2;padding:0;display:flex;flex-direction:column;}
.tile-lg .tile-img{width:100%;height:220px;object-fit:cover;border-radius:var(--r-lg) var(--r-lg) 0 0;}
.tile-lg .tile-body{padding:1.8rem;}
.tile-sm{grid-column:span 1;}


.cmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;}
.cmp-col{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:2rem;}
.cmp-col-b{background:linear-gradient(160deg,var(--accent-soft),var(--surface) 60%);}
.cmp-hd{display:flex;align-items:center;gap:.8rem;margin-bottom:1.3rem;}
.cmp-hd i{font-size:1.2rem;color:var(--accent-dark);}
.cmp-hd h3{font-size:1.15rem;}
.cmp-list li{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:.85rem;color:var(--ink-soft);font-size:.96rem;line-height:1.5;}
.cmp-list i{margin-top:.3rem;color:var(--accent-2);font-size:.85rem;}


.psn-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.psn-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.8rem;text-align:center;transition:transform var(--tr),box-shadow var(--tr);}
.psn-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2);}
.psn-ico{width:52px;height:52px;border-radius:var(--r-full);background:var(--accent-2-soft);color:var(--accent-2);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto 1rem;}
.psn-title{font-size:1.05rem;margin-bottom:.5rem;}
.psn-txt{color:var(--ink-soft);font-size:.92rem;}


.qte-sec{background:var(--bg-soft);border-radius:var(--r-xl);}
.qte-swiper{padding-bottom:3rem;}
.qte-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:2.4rem;max-width:640px;margin:0 auto;text-align:center;}
.qte-card i{color:var(--accent);font-size:1.6rem;margin-bottom:1rem;}
.qte-txt{font-family:var(--ff-h);font-size:1.25rem;line-height:1.5;margin-bottom:1.2rem;color:var(--ink);}
.qte-src{color:var(--ink-faint);font-size:.85rem;font-weight:600;}
.swiper-pagination-bullet{background:var(--ink-faint);opacity:.4;}
.swiper-pagination-bullet-active{background:var(--accent);opacity:1;}


.res-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.res-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.8rem;transition:transform var(--tr),box-shadow var(--tr);}
.res-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2);}
.res-ico{width:48px;height:48px;border-radius:var(--r-md);background:var(--accent-2-soft);color:var(--accent-2);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:1rem;}
.res-title{font-size:1.05rem;margin-bottom:.5rem;}
.res-txt{color:var(--ink-soft);font-size:.9rem;margin-bottom:1rem;}
.res-tag{display:inline-block;font-size:.75rem;font-weight:700;color:var(--accent-dark);background:var(--accent-soft);padding:.3rem .7rem;border-radius:var(--r-full);}


.cta-band{background:linear-gradient(120deg,var(--accent) 0%,var(--accent-dark) 100%);border-radius:var(--r-xl);padding:clamp(2.5rem,5vw,3.5rem);box-shadow:var(--sh-3);}
.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;max-width:100%;}
.cta-band-txt h2{color:#fff;font-size:clamp(1.5rem,2.8vw,2rem);margin-bottom:.5rem;}
.cta-band-txt p{color:rgba(255,255,255,.85);max-width:44ch;}


.split-txt-img-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:center;}
.split-txt-img.rev .split-txt-img-inner{direction:rtl;}
.split-txt-img.rev .split-txt,.split-txt-img.rev .split-img{direction:ltr;}
.split-txt p{color:var(--ink-soft);margin-bottom:1rem;font-size:1rem;}
.split-txt .sec-title{margin-bottom:1rem;}
.rd-img{width:100%;border-radius:var(--r-lg);box-shadow:var(--sh-2);aspect-ratio:4/3;object-fit:cover;}


.cta-split-inner{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch;}
.map-wrap{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-2);min-height:420px;}
.frm-wrap{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:clamp(1.8rem,3vw,2.6rem);}
.frm-title{margin-bottom:.6rem;}
.frm-lead{color:var(--ink-soft);font-size:.92rem;margin-bottom:1.6rem;}
.frm-field{margin-bottom:1.2rem;display:flex;flex-direction:column;gap:.45rem;}
.frm-field label{font-size:.88rem;font-weight:600;color:var(--ink);}
.frm-field input,.frm-field textarea{border:1px solid var(--line);border-radius:var(--r-md);padding:.85rem 1rem;background:var(--bg);font-size:.95rem;transition:border-color var(--tr),box-shadow var(--tr);}
.frm-field input:focus,.frm-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);}
.frm-field textarea{resize:vertical;min-height:110px;}
.frm-check{display:flex;align-items:flex-start;gap:.7rem;margin:1.2rem 0 1.5rem;font-size:.88rem;color:var(--ink-soft);}
.frm-check input{width:20px;height:20px;margin-top:.15rem;accent-color:var(--accent);}
.frm-check a{color:var(--accent-dark);font-weight:600;}
.frm-submit{width:100%;justify-content:center;}


.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;}
.faq-item{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.6rem 1.8rem;transition:box-shadow var(--tr),transform var(--tr);}
.faq-item:hover{box-shadow:var(--sh-2);transform:translateY(-2px);}
.faq-q{font-size:1rem;margin-bottom:.6rem;display:flex;align-items:center;gap:.6rem;}
.faq-q i{color:var(--accent);}
.faq-a{color:var(--ink-soft);font-size:.92rem;}


.thx{padding:clamp(8rem,12vw,10rem) 1.25rem 6rem;display:flex;justify-content:center;}
.thx-card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-3);padding:clamp(2.5rem,5vw,3.5rem);max-width:560px;text-align:center;}
.thx-ico{width:64px;height:64px;border-radius:var(--r-full);background:var(--accent-2-soft);color:var(--accent-2);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 1.4rem;}
.thx-card h1{font-size:1.9rem;margin-bottom:1rem;}
.thx-card p{color:var(--ink-soft);margin-bottom:1rem;}
.thx-count{font-weight:600;color:var(--ink);margin-bottom:1.6rem;}
.thx-count span{color:var(--accent-dark);font-family:var(--ff-h);font-size:1.2rem;}


.sec-legal{max-width:920px;}
.acc-item{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);margin-bottom:1rem;overflow:hidden;}
.acc-hd{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.3rem 1.6rem;font-family:var(--ff-h);font-weight:600;font-size:1.02rem;color:var(--ink);transition:background var(--tr);}
.acc-hd:hover{background:var(--bg-soft);}
.acc-hd i{transition:transform var(--tr);color:var(--accent-dark);}
.acc-item.open .acc-hd i{transform:rotate(180deg);}
.acc-panel{max-height:0;overflow:hidden;transition:max-height var(--tr-sl);}
.acc-panel-in{padding:0 1.6rem 1.5rem;color:var(--ink-soft);font-size:.96rem;line-height:1.65;}
.lg-table{margin-top:.8rem;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;}
.lg-table td{padding:.7rem 1rem;border-bottom:1px solid var(--line);font-size:.9rem;}
.lg-table tr:last-child td{border-bottom:none;}
.lg-table td:first-child{font-weight:600;width:38%;background:var(--bg-soft);}
.imp-block{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.8rem 2rem;margin-bottom:1.2rem;}
.imp-block h2{font-size:1.15rem;margin-bottom:.4rem;}
.imp-block p{color:var(--ink-soft);font-size:.96rem;}
.imp-block a{color:var(--accent-dark);font-weight:600;}


.ck-bar{position:fixed;top:0;left:0;right:0;z-index:500;background:var(--surface);box-shadow:var(--sh-2);transform:translateY(-110%);transition:transform var(--tr-sl);border-bottom:3px solid var(--accent);}
.ck-bar.show{transform:translateY(0);}
.ck-bar-inner{max-width:1280px;margin:0 auto;padding:1rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1.4rem;flex-wrap:wrap;}
.ck-txt{font-size:.9rem;color:var(--ink-soft);display:flex;align-items:center;gap:.6rem;flex:1;min-width:220px;}
.ck-txt i{color:var(--accent);}
.ck-txt a{color:var(--accent-dark);font-weight:600;}
.ck-actions{display:flex;gap:.6rem;flex-wrap:wrap;}
.ck-btn{padding:.6rem 1.1rem;border-radius:var(--r-full);font-size:.85rem;font-weight:600;transition:transform var(--tr),background var(--tr),box-shadow var(--tr);}
.ck-btn-ghost{background:var(--bg-soft);color:var(--ink);}
.ck-btn-ghost:hover{background:var(--accent-soft);transform:translateY(-1px);}
.ck-btn-acc{background:var(--accent);color:#fff;box-shadow:var(--sh-acc);}
.ck-btn-acc:hover{background:var(--accent-dark);transform:translateY(-1px);}


.ck-modal{position:fixed;inset:0;z-index:600;background:rgba(36,31,24,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--tr-sl);padding:1.2rem;}
.ck-modal.show{opacity:1;pointer-events:auto;}
.ck-modal-box{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-3);max-width:520px;width:100%;max-height:85vh;overflow-y:auto;transform:scale(.94);transition:transform var(--tr-sl);}
.ck-modal.show .ck-modal-box{transform:scale(1);}
.ck-modal-hd{display:flex;align-items:center;justify-content:space-between;padding:1.3rem 1.6rem;border-bottom:1px solid var(--line);}
.ck-modal-hd h3{font-size:1.15rem;}
.ck-modal-close{width:34px;height:34px;border-radius:var(--r-full);background:var(--bg-soft);display:flex;align-items:center;justify-content:center;transition:background var(--tr);}
.ck-modal-close:hover{background:var(--accent-soft);}
.ck-modal-body{padding:1.4rem 1.6rem;}
.ck-cat{padding:1rem 0;border-bottom:1px solid var(--line);}
.ck-cat:last-child{border-bottom:none;}
.ck-cat-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem;font-weight:600;}
.ck-cat p{color:var(--ink-soft);font-size:.86rem;}
.ck-switch{position:relative;display:inline-block;width:44px;height:24px;}
.ck-switch input{opacity:0;width:0;height:0;}
.ck-slider{position:absolute;inset:0;background:var(--line);border-radius:var(--r-full);transition:background var(--tr);cursor:pointer;}
.ck-slider::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform var(--tr);box-shadow:var(--sh-1);}
.ck-switch input:checked + .ck-slider{background:var(--accent);}
.ck-switch input:checked + .ck-slider::before{transform:translateX(20px);}
.ck-switch input:disabled + .ck-slider{background:var(--accent-2);opacity:.7;cursor:not-allowed;}
.ck-modal-ftr{display:flex;gap:.8rem;padding:1.2rem 1.6rem;border-top:1px solid var(--line);}
.ck-modal-ftr .ck-btn{flex:1;justify-content:center;display:flex;}


.ftr{background:var(--ink);color:#e8e3d8;margin-top:auto;}
.ftr-top{max-width:1280px;margin:0 auto;padding:4rem 1.5rem 2.5rem;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:2.5rem;}
.ftr-brand p{color:#c7c0b0;font-size:.9rem;margin-top:1rem;max-width:36ch;}
.ftr-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;color:#8b8375;margin-bottom:1.1rem;}
.ftr-link{display:block;color:#d8d2c4;font-size:.92rem;margin-bottom:.7rem;transition:color var(--tr);}
.ftr-link:hover{color:var(--accent);}
.ftr-col p{color:#d8d2c4;font-size:.9rem;margin-bottom:.6rem;display:flex;align-items:center;gap:.5rem;}
.ftr-col p i{color:var(--accent);width:16px;}
.ftr-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.4rem 1.5rem;max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;font-size:.82rem;color:#a49c8a;}
}

@layer utilities {
  body{display:flex;flex-direction:column;min-height:100vh;}
  main{flex:1;}
  .is-hidden{display:none !important;}
}

@media (max-width:1024px){
  .hdr-nav{display:none;}
  .hdr-burger{display:flex;}
  .board-grid,.board-grid-mix{grid-template-columns:repeat(2,1fr);}
  .tile-lg{grid-column:span 2;}
  .psn-grid{grid-template-columns:repeat(2,1fr);}
  .res-grid{grid-template-columns:repeat(2,1fr);}
  .cta-split-inner{grid-template-columns:1fr;}
  .map-wrap{min-height:320px;}
  .faq-grid{grid-template-columns:1fr;}
  .ftr-top{grid-template-columns:1fr 1fr;}
}

@media (max-width:760px){
  .hero-inner{grid-template-columns:1fr;}
  .hero-visual{order:-1;}
  .hero-float{position:static;margin-top:.8rem;display:inline-flex;flex-direction:row;gap:.5rem;align-items:center;margin-right:.6rem;}
  .split-txt-img-inner{grid-template-columns:1fr;}
  .split-txt-img.rev .split-txt-img-inner{direction:ltr;}
  .cmp-grid{grid-template-columns:1fr;}
  .board-grid,.board-grid-mix{grid-template-columns:1fr;}
  .tile-lg{grid-column:span 1;}
  .psn-grid,.res-grid{grid-template-columns:1fr;}
  .cta-band-inner{flex-direction:column;text-align:center;}
  .ftr-top{grid-template-columns:1fr;}
  .ck-bar-inner{flex-direction:column;align-items:flex-start;}
}
</style>