:root{--bg:#ffffff;--bg-alt:#f5f7fa;--text:#1f2933;--muted:#5f6b7a;--line:#e3e8ef;--card:#ffffff;--primary:#1895d5;--accent:#3858e9;--radius:14px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.65 system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}
h1,h2,h3{font-family:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;line-height:1.2;margin:0 0 .6em}
h1{font-size:clamp(2rem,4.5vw,3.2rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:1.15rem}
p{margin:0 0 1em}a{color:var(--primary)}img{max-width:100%;height:auto;display:block;border-radius:var(--radius)}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
.site-header{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.15rem;color:var(--text);text-decoration:none}
.brand img{height:40px;width:auto;border-radius:0}
.site-nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.site-nav a{color:var(--muted);text-decoration:none;font-size:.95rem;padding:4px 0}
.site-nav a[aria-current=page],.site-nav a:hover{color:var(--primary)}
section{padding:64px 0}section:nth-of-type(even){background:var(--bg-alt)}
.page-head{padding:56px 0 8px}
.hero{padding:88px 0;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--bg)),var(--bg))}
.hero-split .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.lead{font-size:1.2rem;color:var(--muted)}
.button{display:inline-block;background:var(--primary);color:#fff;padding:12px 22px;border-radius:999px;text-decoration:none;font-weight:600}
.button:hover{background:var(--accent)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.card img{margin:-6px -6px 14px;width:calc(100% + 12px);aspect-ratio:16/10;object-fit:cover}
.card p{color:var(--muted);margin:0}
.photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px}
.photos figure,.text figure{margin:0}.photos img{aspect-ratio:4/3;object-fit:cover;width:100%}
.text-media .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.cta{text-align:center;background:var(--primary)!important;color:#fff}.cta a:not(.button){color:#fff}.cta .button{background:#fff;color:var(--primary)}
details{border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:0 0 10px;background:var(--card)}
summary{cursor:pointer;font-weight:600}details p{margin:10px 0 0;color:var(--muted)}
.contact-card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--card);margin-top:16px}
.contact-card .label{margin:0;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}
.site-footer{border-top:1px solid var(--line);padding:36px 0;color:var(--muted);font-size:.95rem}
.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:6px 16px}.site-footer a{color:var(--muted)}
table{border-collapse:collapse;width:100%}td,th{border:1px solid var(--line);padding:8px}
@media (max-width:760px){.hero-split .wrap,.text-media .wrap{grid-template-columns:1fr}section{padding:44px 0}.hero{padding:56px 0}}
:root{--radius:20px}
.art{position:relative;width:min(100%,306px);aspect-ratio:1;margin:0 auto}.art i{position:absolute;display:block}
.art-in{position:absolute;inset:0;display:block;transform:translate(-2%,-3%) rotate(6deg)}
.art::before{content:"";position:absolute;inset:6%;background:color-mix(in srgb,var(--accent) 16%,transparent);display:none}
.cta-art .art{width:min(60%,180px);margin-bottom:12px}.cta-art .art::before{background:rgba(255,255,255,.18)}
@keyframes art-twinkle{0%,100%{transform:scale(1)}50%{transform:scale(.82)}}
.art-spark i{clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);animation:art-twinkle 4s ease-in-out infinite}
.art-spark .t1{left:22%;top:26%;width:45%;height:45%;background:var(--primary);animation-delay:0s}.art-spark .t2{left:14%;top:14%;width:16%;height:16%;background:var(--accent);animation-delay:1.3s}.art-spark .t3{left:72%;top:40%;width:23%;height:23%;background:color-mix(in srgb,var(--primary) 75%,var(--accent));animation-delay:2.6s}
.art-blobs::before{display:none}
.art-blobs .k1{left:8%;top:14%;width:58%;height:56%;background:linear-gradient(123deg,var(--primary),color-mix(in srgb,var(--primary) 75%,var(--accent)));border-radius:70% 30% 52% 48%/38% 62% 38% 62%}
.art-blobs .k2{left:40%;top:40%;width:48%;height:46%;background:var(--accent);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;opacity:.85}
.art-blobs .k3{left:22%;top:58%;width:26%;height:24%;background:color-mix(in srgb,var(--primary) 65%,var(--bg));border-radius:60% 40% 30% 70%/60% 30% 70% 40%}
.art-house .w{left:26%;right:26%;top:46%;bottom:14%;background:var(--primary)}
.art-house .r{left:16%;right:16%;top:16%;height:32%;background:var(--accent);clip-path:polygon(50% 0,100% 100%,0 100%)}
.art-house .d{left:44%;right:44%;top:64%;bottom:14%;background:var(--bg);border-radius:999px 999px 0 0}
.art-house .x1,.art-house .x2{top:54%;width:10%;height:10%;background:var(--bg);border-radius:50%}.art-house .x1{left:31%}.art-house .x2{right:31%}
.art-leaf i{border-radius:0 100% 0 100%;overflow:hidden}
.art-leaf i::after{content:"";position:absolute;left:50%;top:-20%;width:2px;height:140%;background:rgba(255,255,255,.55);transform:rotate(-45deg)}
.art-leaf .l1{left:18%;top:16%;width:54%;height:54%;background:linear-gradient(98deg,var(--primary),color-mix(in srgb,var(--primary) 75%,var(--accent)))}
.art-leaf .l2{left:50%;top:48%;width:32%;height:32%;background:var(--accent);transform:rotate(90deg)}
.icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 0 14px;border-radius:10px;background:color-mix(in srgb,var(--primary) 14%,var(--card))}.icon i{position:relative;display:block}
.icon-clock i{width:28px;height:28px;border:3px solid var(--primary);border-radius:50%}.icon-clock i::before,.icon-clock i::after{content:"";position:absolute;left:50%;top:50%;background:var(--primary);border-radius:2px}.icon-clock i::before{width:3px;height:9px;margin:-9px 0 0 -1.5px}.icon-clock i::after{width:8px;height:3px;margin:-1.5px 0 0 0}
.icon-shield i{width:24px;height:28px;background:var(--primary);clip-path:polygon(50% 0,100% 16%,94% 60%,50% 100%,6% 60%,0 16%)}
.icon-plus i{width:26px;height:6px;background:var(--primary);border-radius:3px}.icon-plus i::after{content:"";position:absolute;left:10px;top:-10px;width:6px;height:26px;background:var(--primary);border-radius:3px}
.icon-chat i{width:28px;height:20px;margin-top:-4px;background:var(--primary);border-radius:8px}.icon-chat i::after{content:"";position:absolute;left:5px;bottom:-7px;width:10px;height:9px;background:var(--primary);clip-path:polygon(0 0,100% 0,0 100%)}
.icon-check i{width:13px;height:24px;border:solid var(--primary);border-width:0 4px 4px 0;transform:translateY(-3px) rotate(45deg)}
.icon-star i{width:28px;height:28px;background:var(--primary);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.icon-bolt i{width:22px;height:30px;background:var(--primary);clip-path:polygon(62% 0,8% 58%,44% 58%,34% 100%,92% 38%,56% 38%)}
.icon-heart i{width:24px;height:22px}.icon-heart i::before,.icon-heart i::after{content:"";position:absolute;top:0;width:13px;height:20px;background:var(--primary);border-radius:13px 13px 0 0}.icon-heart i::before{left:12px;transform:rotate(-45deg);transform-origin:0 100%}.icon-heart i::after{left:-1px;transform:rotate(45deg);transform-origin:100% 100%}
.icon-pin i{width:22px;height:22px;margin-top:-4px;background:var(--primary);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.icon-pin i::after{content:"";position:absolute;left:7px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--card)}
.edge{position:relative}.edge::after{content:"";position:absolute;left:0;right:0;bottom:-1px;pointer-events:none}
.edge-to-bg{--edge:var(--bg)}.edge-to-alt{--edge:var(--bg-alt)}.edge-to-primary{--edge:var(--primary)}
.edge-wave::after{height:16px;background:radial-gradient(circle at 50% 0,transparent 15px,var(--edge) 16px) 0 0/32px 16px repeat-x}
@media (prefers-reduced-motion:reduce){.art i{animation:none!important}}
