:root { --cln-bg:#eef7f7; --cln-panel:#ffffff; --cln-text:#18323a; --cln-muted:color-mix(in srgb, #18323a 62%, white); --cln-line:color-mix(in srgb, #18323a 14%, transparent); --cln-accent:#2ca7a0; --cln-accent2:#79d1c8; --cln-shadow:0 24px 70px color-mix(in srgb, #79d1c8 18%, transparent); --cln-radius:24px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.cln-body { margin:0; font-family:'Nunito Sans', system-ui, sans-serif; background:var(--cln-bg); color:var(--cln-text); line-height:1.65; }
img { max-width:100%; display:block; border-radius:calc(var(--cln-radius) - 6px); }
a { color:inherit; text-decoration:none; }
button, input, select, textarea { font:inherit; }
.cln-skip { position:absolute; left:-999px; top:0; }
.cln-skip:focus { left:1rem; top:1rem; background:var(--cln-panel); padding:.8rem 1rem; border-radius:14px; z-index:100; }
.cln-shell { width:min(1180px, calc(100% - 2rem)); margin-inline:auto; }
.cln-mast { position:sticky; top:0; z-index:20; backdrop-filter:blur(16px); background:color-mix(in srgb, var(--cln-bg) 86%, transparent); border-bottom:1px solid var(--cln-line); }
.cln-mastbar { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.cln-brand { display:flex; align-items:center; gap:.85rem; }
.cln-brandtext, .cln-footbrand { font-family:'Poppins', serif; letter-spacing:.04em; font-size:clamp(1rem, 1vw + .8rem, 1.3rem); }
.cln-brandmark { width:44px; height:44px; }
.cln-navtray { display:flex; align-items:center; gap:.9rem; }
.cln-navlink { padding:.55rem .8rem; border-radius:999px; color:var(--cln-muted); }
.cln-navlink--current, .cln-navlink:hover { color:var(--cln-text); background:color-mix(in srgb, var(--cln-accent) 12%, var(--cln-panel)); }
.cln-navtoggle { display:none; background:none; border:1px solid var(--cln-line); color:var(--cln-text); padding:.7rem .9rem; border-radius:999px; }
.cln-btn { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; padding:.95rem 1.2rem; border:none; border-radius:999px; background:linear-gradient(135deg, var(--cln-accent), var(--cln-accent2)); color:white; font-weight:700; box-shadow:var(--cln-shadow); cursor:pointer; }
.cln-btn--small { padding:.7rem 1rem; font-size:.92rem; }
.cln-btn--ghost { background:transparent; color:var(--cln-text); border:1px solid var(--cln-line); box-shadow:none; }
.cln-btn:hover, .cln-navtoggle:hover { transform:translateY(-1px); }
.cln-hero { padding:clamp(3.4rem, 7vw, 6rem) 0 2rem; }
.cln-heroarea { display:grid; grid-template-columns:1.12fr .88fr; gap:1.4rem; align-items:center; }
.cln-eyebrow { text-transform:uppercase; letter-spacing:.18em; font-size:.8rem; font-weight:700; color:var(--cln-accent); }
.cln-headline { font-family:'Poppins', serif; font-size:clamp(2.5rem, 5vw, 5rem); line-height:1.02; margin:.7rem 0 1rem; }
.cln-intro { font-size:1.04rem; color:var(--cln-muted); max-width:62ch; }
.cln-cta { display:flex; flex-wrap:wrap; gap:.85rem; margin-top:1.35rem; }
.cln-metrics, .cln-tags { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.2rem; }
.cln-metric, .cln-tag { padding:.72rem .95rem; border-radius:18px; background:var(--cln-panel); border:1px solid var(--cln-line); }
.cln-heroart, .cln-panel, .cln-card, .cln-quote, .cln-faqitem, .cln-bookingbox, .cln-modalbox { background:var(--cln-panel); border:1px solid var(--cln-line); border-radius:var(--cln-radius); box-shadow:var(--cln-shadow); }
.cln-heroart { overflow:hidden; position:relative; min-height:100%; }
.cln-heroart img { width:100%; height:100%; min-height:420px; object-fit:cover; }
.cln-section { padding:clamp(2.8rem, 6vw, 5.4rem) 0; }
.cln-section--soft { background:color-mix(in srgb, var(--cln-panel) 52%, transparent); }
.cln-headingblock { max-width:720px; margin-bottom:1.6rem; }
.cln-headingblock h2, .cln-headingblock h1, .cln-subhero h1 { font-family:'Poppins', serif; font-size:clamp(2rem, 3.7vw, 3.2rem); line-height:1.08; margin:0 0 .75rem; }
.cln-headingblock p, .cln-subhero p { color:var(--cln-muted); margin:0; }
.cln-grid2, .cln-grid3, .cln-grid4 { display:grid; gap:1rem; }
.cln-grid2 { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.cln-grid3 { grid-template-columns:repeat(3, minmax(0, 1fr)); }
.cln-grid4 { grid-template-columns:repeat(4, minmax(0, 1fr)); }
.cln-card { padding:1.15rem; overflow:hidden; }
.cln-card h3, .cln-card h4, .cln-quote strong, .cln-kicker { margin:.9rem 0 .45rem; font-size:1.02rem; }
.cln-copy, .cln-smallcopy { color:var(--cln-muted); }
.cln-smallcopy { font-size:.93rem; }
.cln-split { display:grid; grid-template-columns:1fr 1fr; gap:1rem; align-items:start; }
.cln-price { color:var(--cln-accent); font-weight:800; letter-spacing:.03em; }
.cln-list { display:grid; gap:.7rem; padding:0; margin:1rem 0 0; list-style:none; }
.cln-list li { display:flex; gap:.7rem; align-items:flex-start; }
.cln-list li::before { content:'•'; color:var(--cln-accent); font-weight:900; }
.cln-gallery { display:grid; grid-template-columns:1.1fr .9fr .9fr; gap:1rem; }
.cln-gallery img { width:100%; height:100%; min-height:220px; object-fit:cover; }
.cln-quote { padding:1.2rem; }
.cln-quote span { color:var(--cln-accent); font-size:1.1rem; }
.cln-bookingbox { padding:1.2rem; }
.cln-form { display:grid; gap:.9rem; }
.cln-formrow { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:.8rem; }
.cln-field { display:grid; gap:.38rem; }
.cln-field label { font-weight:700; font-size:.95rem; }
.cln-field input, .cln-field select, .cln-field textarea { width:100%; padding:.95rem 1rem; border-radius:16px; border:1px solid var(--cln-line); background:color-mix(in srgb, var(--cln-panel) 84%, transparent); color:var(--cln-text); }
.cln-field textarea { min-height:140px; resize:vertical; }
.cln-notice { min-height:1.3rem; color:var(--cln-accent); font-weight:700; }
.cln-contactinfo { display:grid; gap:.8rem; }
.cln-contactpill { padding:1rem; border-radius:18px; border:1px solid var(--cln-line); background:var(--cln-panel); }
.cln-faqitem button { all:unset; display:flex; width:100%; justify-content:space-between; gap:1rem; cursor:pointer; padding:1rem 1.1rem; font-weight:700; }
.cln-faqanswer { padding:0 1.1rem 1rem; color:var(--cln-muted); }
.cln-faqanswer[hidden] { display:none; }
.cln-filters { display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); gap:.8rem; margin:1rem 0 1.4rem; }
.cln-subhero { padding:3rem 0 1rem; }
.cln-subhero .cln-panel { padding:1.2rem; }
.cln-modalbackdrop { position:fixed; inset:0; background:rgba(10,10,20,.62); display:none; align-items:center; justify-content:center; padding:1rem; z-index:40; }
.cln-modalbackdrop.is-open { display:flex; }
.cln-modalbox { width:min(880px, 100%); max-height:92vh; overflow:auto; padding:1.2rem; }
.cln-modalclose { margin-left:auto; display:block; border:1px solid var(--cln-line); background:none; color:var(--cln-text); padding:.6rem .9rem; border-radius:999px; }
.cln-compareshell { position:relative; overflow:hidden; border-radius:var(--cln-radius); min-height:360px; }
.cln-before, .cln-after { position:absolute; inset:0; }
.cln-before img, .cln-after img { width:100%; height:100%; object-fit:cover; border-radius:0; }
.cln-after { width:50%; overflow:hidden; border-right:2px solid white; }
.cln-comparerange { width:100%; margin-top:1rem; accent-color:var(--cln-accent); }
.cln-footer { padding:2rem 0 3rem; border-top:1px solid var(--cln-line); }
.cln-footgrid { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:1rem; }
.cln-foottitle { font-weight:800; margin-bottom:.4rem; }
.cln-foottext, .cln-footnote { color:var(--cln-muted); }
.cln-footnote { padding-top:1rem; font-size:.92rem; }
.cln-whatsapp { position:fixed; right:1rem; bottom:1rem; z-index:30; background:#25D366; color:#062b14; font-weight:800; padding:.95rem 1rem; border-radius:999px; box-shadow:0 15px 35px rgba(37,211,102,.25); }
.cln-reveal { opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.cln-reveal.is-visible { opacity:1; transform:none; }
.cln-accentband { background:linear-gradient(135deg, color-mix(in srgb, var(--cln-accent) 18%, var(--cln-panel)), color-mix(in srgb, var(--cln-accent2) 16%, var(--cln-panel))); }
.cln-heroart::after { content:''; position:absolute; inset:auto 0 0 0; height:45%; background:linear-gradient(180deg, transparent, rgba(0,0,0,.35)); }
.cln-heroartnote { position:absolute; left:1rem; bottom:1rem; color:white; z-index:1; max-width:240px; padding:1rem; border-radius:18px; background:rgba(10,10,20,.45); backdrop-filter:blur(10px); }
.cln-table { width:100%; border-collapse:collapse; }
.cln-table th, .cln-table td { text-align:left; padding:.9rem .7rem; border-bottom:1px solid var(--cln-line); }
.cln-table th { font-size:.92rem; letter-spacing:.04em; text-transform:uppercase; color:var(--cln-muted); }
:focus-visible { outline:3px solid color-mix(in srgb, var(--cln-accent) 72%, white); outline-offset:2px; }
@media (max-width: 980px) { .cln-heroarea, .cln-grid3, .cln-grid4, .cln-split, .cln-footgrid, .cln-gallery, .cln-filters { grid-template-columns:1fr 1fr; } .cln-grid2, .cln-formrow { grid-template-columns:1fr; } .cln-heroart img { min-height:320px; } }
@media (max-width: 760px) { .cln-navtoggle { display:inline-flex; } .cln-navtray { position:absolute; top:76px; left:1rem; right:1rem; flex-direction:column; align-items:stretch; padding:1rem; background:var(--cln-panel); border:1px solid var(--cln-line); border-radius:24px; display:none; } .cln-navtray.is-open { display:flex; } .cln-heroarea, .cln-grid3, .cln-grid4, .cln-split, .cln-footgrid, .cln-gallery, .cln-filters { grid-template-columns:1fr; } .cln-headline { font-size:clamp(2.35rem, 11vw, 4rem); } .cln-whatsapp { bottom:.85rem; right:.85rem; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } .cln-reveal { opacity:1; transform:none; transition:none; } * { animation:none !important; transition:none !important; } }

.cln-notice:empty{display:none}
.cln-notice--success{display:inline-block;background:color-mix(in srgb, var(--cln-accent) 16%, white);border:1px solid color-mix(in srgb, var(--cln-accent) 45%, white);padding:.7rem 1rem;border-radius:12px;margin-top:.4rem}
