*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}img,svg{max-width:100%}.wrap{width:min(1200px,calc(100% - 44px));margin:auto}.demo-bar{background:#142330;color:#fff;font-size:11px;letter-spacing:.06em;text-align:center;padding:8px 14px}.top{padding:22px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font:700 22px/1.1 Georgia,serif;text-decoration:none;letter-spacing:-.03em}.brand small{display:block;font:600 9px/1.5 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}.links{display:flex;align-items:center;gap:24px}.links a{text-decoration:none;font-size:13px;font-weight:650}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);text-decoration:none;font-size:13px;font-weight:700;min-height:48px}.button:hover{opacity:.85}.button.outline{background:transparent;color:var(--ink)}.kicker{font-size:11px;letter-spacing:.15em;font-weight:750;text-transform:uppercase}.hero{padding:64px 0 76px}.hero h1{font:500 clamp(52px,7vw,100px)/.99 Georgia,serif;letter-spacing:-.055em;margin:18px 0 25px}.hero h1 em{font-weight:400;color:var(--highlight)}.hero p{font-size:17px;max-width:560px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:82px 0}.section h2,.closing h2{font:500 clamp(38px,5vw,65px)/1.08 Georgia,serif;letter-spacing:-.045em;margin:10px 0 22px}.section-intro{max-width:580px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}.card{padding:28px;background:var(--card);min-width:0}.card h3{font:500 26px/1.2 Georgia,serif;letter-spacing:-.03em}.card p,.card li{font-size:14px}.card .num{font-size:11px;letter-spacing:.12em;font-weight:700}.strip{padding:20px 0;background:var(--ink);color:var(--paper);font-size:12px;letter-spacing:.09em;text-transform:uppercase}.strip .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.feature{background:var(--card);padding:40px;min-height:330px;display:flex;flex-direction:column;justify-content:center}.feature h3{font:500 40px/1.1 Georgia,serif;margin:10px 0}.list{padding:0;list-style:none}.list li{padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 18%,transparent)}.list li:before{content:'↗';margin-right:13px;color:var(--highlight)}.faq{border-top:1px solid color-mix(in srgb,var(--ink) 25%,transparent)}details{border-bottom:1px solid color-mix(in srgb,var(--ink) 25%,transparent);padding:18px 0}summary{cursor:pointer;font-weight:650}details p{max-width:750px}.closing{background:var(--ink);color:var(--paper);padding:72px 0}.closing h2{max-width:750px}.form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:end;margin-top:30px}.form label{display:flex;flex-direction:column;gap:7px;font-size:13px}.form select,.form input{min-height:48px;padding:10px;border:1px solid #adb8bd;background:white;color:#192632;min-width:0;width:100%}.form button{background:var(--accent);border:0;color:#15212a;min-height:48px;padding:12px 20px;font-weight:750;cursor:pointer}.result{margin-top:14px;color:inherit;min-height:24px;font-size:14px}.footer{background:var(--paper);padding:42px 0 0}.footer .footgrid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer p{max-width:380px;font-size:14px}.footer nav{display:flex;gap:18px;flex-wrap:wrap}.footer a{font-size:13px}.wti-credit{margin-top:36px}.visual{position:relative;min-height:440px;overflow:hidden}.visual svg{width:100%;height:100%;position:absolute;inset:0}.hero-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.hero-layout>.visual{border-radius:8px}.banner-note{font-size:12px;margin-top:16px;opacity:.8}
body[data-site=dental]{--paper:#fffaf5;--ink:#1f3937;--highlight:#b65c4d;--accent:#f3a993;--card:#f6e7dc}.dental .hero h1{max-width:650px}.dental .visual{border-radius:220px 220px 12px 12px;background:#cde0d4}.dental .card{border-radius:18px}.dental .button{border-radius:30px}.dental .section:nth-of-type(even){background:#f4f0e9}
body[data-site=interior]{--paper:#f4f0e7;--ink:#2f302a;--highlight:#997751;--accent:#dfc4a1;--card:#e7ddd0}.interior .hero{padding-top:35px}.interior .hero-layout{grid-template-columns:.85fr 1.15fr}.interior .visual{min-height:560px;border-radius:0}.interior .hero h1{font-size:clamp(58px,6.5vw,94px)}.interior .card{background:transparent;border-top:1px solid #9c978b;padding:24px 0}.interior .feature{min-height:420px}.interior .strip{background:#cabca9;color:#2f302a}
body[data-site=jewellery]{--paper:#fff8e9;--ink:#403031;--highlight:#bd5548;--accent:#eabf70;--card:#f3e2d0}.jewellery .hero{background:#f7ddd3}.jewellery .hero-layout{grid-template-columns:1fr 1fr}.jewellery .hero h1{font-style:italic}.jewellery .visual{min-height:460px;background:#eabf70;border-radius:50% 50% 5px 5px}.jewellery .cards .card:nth-child(2){background:#e1e7d1}.jewellery .cards .card:nth-child(3){background:#f6d9ca}.jewellery .button{border-radius:30px}
body[data-site=wedding]{--paper:#f7f4ec;--ink:#223d43;--highlight:#b6694a;--accent:#e9bb89;--card:#e6ece5}.wedding .hero{padding:0 0 70px}.wedding .hero-layout{display:flex;flex-direction:column-reverse;gap:35px}.wedding .hero-layout>div{width:100%}.wedding .visual{min-height:380px;border-radius:0}.wedding .hero h1{max-width:930px;font-size:clamp(52px,7.5vw,105px)}.wedding .cards{grid-template-columns:1fr 1fr}.wedding .card{padding:34px;border-left:3px solid var(--highlight)}.wedding .section:nth-of-type(even){background:#e7ece5}
body[data-site=resort]{--paper:#f5f4e9;--ink:#1c382d;--highlight:#9c7046;--accent:#e4c88a;--card:#e0e8d5}.resort .hero{padding:32px 0 68px}.resort .hero-layout{display:block;position:relative;background:#d6e2cc;padding:64px;min-height:520px;overflow:hidden}.resort .hero-layout>div:first-child{position:relative;z-index:1;max-width:580px}.resort .visual{position:absolute;inset:0;min-height:100%;opacity:.55}.resort .hero h1{font-size:clamp(58px,7vw,100px)}.resort .section:nth-of-type(even){background:#e0e8d5}.resort .card{border-radius:100px 100px 5px 5px;padding:50px 30px 30px}.resort .button{border-radius:4px}
@media(max-width:760px){.wrap{width:min(100% - 36px,1200px)}.top{padding:18px 0}.links a:not(.button){display:none}.links{gap:0}.links .button{padding:10px 14px}.hero,.section{padding:48px 0}.hero-layout,.interior .hero-layout,.jewellery .hero-layout,.two-col{display:flex;flex-direction:column;gap:30px;align-items:stretch}.hero h1{font-size:clamp(46px,11vw,72px)}.visual,.interior .visual,.jewellery .visual{min-height:330px}.cards,.wedding .cards{grid-template-columns:1fr;gap:12px}.section h2,.closing h2{font-size:38px}.feature{padding:28px;min-height:260px}.form{grid-template-columns:1fr}.resort .hero-layout{padding:35px 24px;min-height:460px}.resort .visual{display:block;opacity:.35}.closing{padding:50px 0 80px}.footer .footgrid{display:block}.footer nav{margin-top:20px}.wedding .hero-layout{flex-direction:column-reverse}.wedding .visual{min-height:250px}.dental .visual{min-height:310px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
