@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=DM+Serif+Display&family=Manrope:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper,#f5f8f7);color:var(--ink);font:15px/1.7 Manrope,system-ui,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display,'DM Sans'),sans-serif;line-height:1.08;letter-spacing:-.045em;font-weight:500}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:4px}img{max-width:100%;display:block}.wrap{width:min(1220px,calc(100% - 80px));margin:auto}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{position:relative;z-index:10}.site-header .wrap{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:var(--display,'DM Sans'),sans-serif;font-size:25px;font-weight:600;letter-spacing:-.06em}.brand em{font-style:normal;font-size:14px;display:block;letter-spacing:.18em;text-transform:uppercase}.site-nav{display:flex;gap:32px;align-items:center;font-size:12px;font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:14px 24px;background:var(--ink);color:var(--paper,#fff);border:1px solid var(--ink);border-radius:8px;font-size:12px;font-weight:700;min-height:48px;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.light{background:var(--accent);border-color:var(--accent);color:var(--ink)}.btn.outline{background:transparent;color:var(--ink);border-color:currentColor}.btn.small{padding:10px 17px;min-height:40px}.menu-toggle{display:none;border:1px solid currentColor;background:none;color:inherit;padding:7px 12px;border-radius:5px}.kicker{display:block;font-size:10px;letter-spacing:.17em;text-transform:uppercase;font-weight:700;margin-bottom:20px}.hero{padding-block:38px 60px}.hero h1{font-size:clamp(46px,5.6vw,82px);max-width:720px}.hero p{max-width:450px;font-size:14px;opacity:.8;margin-top:25px}.hero .actions{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.hero-photo{position:relative}.hero-photo img{width:100%;height:520px;object-fit:cover}.photo-label{position:absolute;bottom:22px;left:22px;padding:16px 22px;background:var(--paper);color:var(--ink);font-size:12px;box-shadow:0 8px 30px #0001}.photo-label strong{display:block;font-size:18px;font-weight:500}.section{padding-block:80px}.section.alt{background:var(--accent)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-head h2{font-size:clamp(32px,4vw,48px);max-width:550px}.section-head p{max-width:320px;font-size:13px;opacity:.8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:var(--card,#fff);border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.service-card .copy{padding:28px}.service-card h3{font-size:27px;margin-bottom:15px}.service-card p{font-size:13px;opacity:.8}.service-card button{border:0;background:none;padding:0;color:inherit;display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;font-size:12px;font-weight:700;margin-top:28px}.service-card img{height:230px;width:100%;object-fit:cover}.service-card .meta{font-size:10px;letter-spacing:.04em;margin-bottom:12px}.service-card .price{font-size:18px;font-weight:600;margin-top:15px;display:block}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about h2{font-size:48px;margin-bottom:25px}.about p{font-size:14px;opacity:.8;margin-bottom:18px}.about img{width:100%;height:460px;object-fit:cover;border-radius:14px}.about ul{list-style:none;padding:0;margin:25px 0}.about li{border-bottom:1px solid color-mix(in srgb,var(--ink) 15%,transparent);padding:12px 0;font-size:13px}.about li::before{content:'↗';margin-right:15px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:60px;background:var(--ink);color:var(--paper);border-radius:18px}.contact h2{font-size:45px;margin-bottom:25px}.contact p{font-size:13px;opacity:.8}.contact form{display:grid;gap:16px}.contact label{font-size:11px;font-weight:600}.contact input,.contact select,.contact textarea{display:block;background:transparent;border:1px solid #ffffff55;padding:12px;border-radius:6px;width:100%;margin-top:6px;color:inherit;font-size:13px}.contact option{color:#182c35;background:#fff}.contact .btn{background:var(--accent);color:var(--ink);border-color:var(--accent)}.contact .form-note{font-size:10px}.site-footer{padding:35px 0 70px;font-size:11px}.site-footer .wrap{display:flex;justify-content:space-between;gap:20px}.demo-ribbon{position:fixed;bottom:0;left:0;right:0;background:var(--ink);color:var(--paper);padding:10px 20px;z-index:50;text-align:center;font-size:10px;border-top:1px solid #ffffff33}.demo-ribbon a{text-decoration:underline;margin-left:12px}.detail-dialog{max-width:640px;width:calc(100% - 32px);border:0;border-radius:16px;padding:32px;color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #0004}.detail-dialog::backdrop{background:#142332aa;backdrop-filter:blur(4px)}.detail-dialog h2{font-size:34px;margin-bottom:20px}.detail-dialog p{font-size:14px;margin:15px 0}.detail-dialog img{height:240px;width:100%;object-fit:cover;border-radius:10px;margin-bottom:25px}.detail-dialog textarea{width:100%;height:160px;font:13px/1.7 Manrope,sans-serif;padding:15px;margin-block:15px;border:1px solid #a8b9c5;border-radius:7px;background:#fff;color:#18303c}.dialog-close{float:right;border:0;background:none;color:inherit;font-size:25px;margin:-10px -10px 10px 15px}.dialog-actions{display:flex;gap:15px;flex-wrap:wrap}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.filters select,.filters input{padding:12px 15px;background:white;border:1px solid #c8d5da;border-radius:7px;font-size:12px;color:var(--ink);flex:1;min-width:150px}.property-count{font-size:12px;margin-bottom:20px}.empty-message{padding:40px;background:white;border-radius:10px}.empty-message[hidden],.service-card[hidden]{display:none}.dental{--paper:#f4f9f8;--card:#fff}.dental .hero-photo img{border-radius:140px 14px 14px 14px}.dental .hero h1{font-weight:500;font-size:70px}.dental .hero h1 em{font-style:normal;text-decoration:underline;text-decoration-color:#a5d5cd;text-underline-offset:10px}.dental .care-strip{border-block:1px solid #d0e4df;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:12px}.law{--paper:#f4f6f9;--display:'DM Serif Display';--card:#fff}.law .site-header{border-bottom:1px solid #d1dbe5}.law .hero{padding-top:70px}.law .hero-photo img{height:500px;border-radius:0}.law .hero h1{font-size:78px}.law .hero .kicker{font-family:Manrope,sans-serif}.law .service-card{border-radius:0;border-top:3px solid var(--ink)}.law .contact{border-radius:0}.law .service-card h3{font-size:30px}.barber{--paper:#f3ede4;--card:#f9f6ef}.barber .brand{text-transform:uppercase;font-weight:800;font-size:21px}.barber .hero{padding-top:0}.barber .panoramic{position:relative;min-height:640px;color:#fff;padding:90px 60px;display:flex;align-items:center;background:#2c2725;overflow:hidden;border-radius:8px}.barber .panoramic>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38}.barber .panoramic>div{position:relative;z-index:1}.barber .hero h1{font-weight:800;max-width:650px;font-size:86px}.barber .hero p{color:#fff;opacity:.95}.barber .service-card{border-radius:0;background:transparent}.barber .contact{border-radius:0}.fitness{--paper:#24213f;--card:#302c50;color:#f4f1ff}.fitness .site-header .btn{background:var(--accent);color:var(--ink);border-color:var(--accent)}.fitness .brand{font-weight:800}.fitness .hero h1{text-transform:uppercase;font-size:88px;font-weight:800;line-height:.97;letter-spacing:-.055em}.fitness .hero h1 em{font-style:normal;color:#e9d3b9}.fitness .hero-photo img{border-radius:150px 150px 12px 12px;height:550px}.fitness .photo-label{background:var(--accent);color:var(--ink)}.fitness .section.alt{background:#302c50}.fitness .service-card{border-color:#726889}.fitness .contact{background:#dad5ff;color:#353362}.fitness .contact input,.fitness .contact select{border-color:#7f78a0}.fitness .contact .btn{background:#353362;color:#fff}.fitness .btn.outline{color:#f4f1ff}.fitness .demo-ribbon{background:#353362;color:#fff}.realty{--paper:#f2f7f8;--card:#fff}.realty .hero{padding-top:8px}.realty .realty-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.realty .hero h1{max-width:750px;font-size:68px}.realty .realty-intro p{margin:0;max-width:290px}.realty .wide-photo{height:420px;width:100%;object-fit:cover;border-radius:14px}.realty .filters{padding:25px;background:white;border:1px solid #d4e2e7;border-radius:12px;margin-top:-35px;position:relative;max-width:1050px;margin-inline:auto;box-shadow:0 12px 25px #123a4d0c}.travel{--paper:#f0f8f9;--card:#fff}.travel .hero{padding-top:0}.travel .travel-cover{height:650px;position:relative;border-radius:20px;overflow:hidden;color:#fff;display:flex;align-items:center;padding:65px}.travel .travel-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.63)}.travel .travel-cover>div{z-index:1;position:relative}.travel .hero h1{font-size:86px;max-width:730px}.travel .hero p{opacity:.95;color:#fff}.travel .destinations{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.travel .destinations a{border:1px solid #ffffff77;padding:8px 16px;border-radius:30px;font-size:11px}.travel .service-card img{height:270px}.travel .service-card{border-radius:16px}.travel .contact{background:#174b68}.travel .about img{border-radius:120px 120px 12px 12px}
@media(max-width:1000px){.wrap{width:calc(100% - 44px)}.split{gap:30px}.hero h1,.dental .hero h1,.law .hero h1{font-size:56px}.hero-photo img{height:470px}.barber .hero h1,.fitness .hero h1,.travel .hero h1{font-size:68px}.about{gap:40px}.contact{gap:40px;padding:40px}.service-card .copy{padding:22px}.service-card h3{font-size:23px}.site-nav{gap:18px}.site-nav .btn{padding:10px 15px}.realty .hero h1{font-size:58px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.site-header .wrap{height:78px;gap:15px}.brand{font-size:21px}.brand em{font-size:11px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:78px;left:18px;right:18px;background:var(--paper);color:var(--ink);padding:22px;box-shadow:0 15px 30px #0002;border:1px solid #bbc8ce;border-radius:10px;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.split{grid-template-columns:1fr;gap:35px}.hero{padding-top:25px;padding-bottom:40px}.hero h1,.dental .hero h1,.law .hero h1,.realty .hero h1{font-size:49px}.hero p{font-size:13px}.hero-photo img{height:380px}.dental .hero-photo img{border-top-left-radius:110px}.photo-label{bottom:15px;left:15px;padding:12px 16px}.photo-label strong{font-size:16px}.section{padding-block:48px}.section-head{flex-direction:column;align-items:start;gap:20px}.section-head h2{font-size:35px}.service-grid{grid-template-columns:1fr;gap:20px}.service-card .copy{padding:28px}.service-card h3{font-size:27px}.about{grid-template-columns:1fr;gap:30px}.about h2{font-size:37px}.about img{height:350px}.contact{grid-template-columns:1fr;padding:30px 24px;gap:30px}.contact h2{font-size:37px}.site-footer .wrap{flex-direction:column;gap:12px}.demo-ribbon{font-size:9px;padding:8px 10px}.dental .care-strip{gap:15px;flex-wrap:wrap;font-size:10px}.law .hero{padding-top:28px}.law .hero-photo img{height:320px}.barber .panoramic{padding:50px 25px;min-height:570px}.barber .hero h1{font-size:58px}.fitness .hero h1{font-size:66px}.fitness .hero-photo img{height:430px}.realty .realty-intro{display:block;margin-bottom:25px}.realty .realty-intro p{margin-top:25px;max-width:100%}.realty .wide-photo{height:280px}.realty .filters{padding:17px;margin-top:-20px;gap:10px;width:calc(100% - 20px)}.filters select,.filters input{min-width:100%;width:100%}.travel .travel-cover{height:590px;padding:35px 25px;border-radius:12px}.travel .hero h1{font-size:58px}.travel .destinations{gap:7px}.travel .destinations a{font-size:10px;padding:6px 12px}.detail-dialog{padding:25px}.detail-dialog h2{font-size:29px}.detail-dialog img{height:200px}.contact input,.contact select{font-size:16px}.fitness .site-nav{background:#dad5ff;color:#353362}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
