:root{--ink: #10222e;--ink-soft: #3d5361;--ink-muted: #6b8090;--paper: #ffffff;--paper-warm: #fbf7f3;--paper-blue: #f2f6f8;--deep: #0d2b3e;--deep-2: #14415c;--sunset: #e2622f;--sunset-dark: #c04d1f;--sunset-soft: #fdeee6;--line: #dfe6ea;--radius: 14px;--radius-lg: 22px;--wrap: 68rem;--shadow-sm: 0 1px 2px rgb(16 34 46 / .06), 0 2px 8px rgb(16 34 46 / .05);--shadow-md: 0 4px 12px rgb(16 34 46 / .07), 0 12px 32px rgb(16 34 46 / .08);--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;font-family:var(--font);font-size:clamp(1rem,.96rem + .2vw,1.0625rem);line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:var(--sunset-dark);text-underline-offset:.2em}a:hover{color:var(--sunset)}img{max-width:100%;height:auto;display:block}:focus-visible{outline:3px solid var(--sunset);outline-offset:3px;border-radius:4px}.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}@media(min-width:40em){.wrap{width:min(100% - 4rem,var(--wrap))}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hero{position:relative;isolation:isolate;min-height:min(78svh,40rem);display:grid;align-items:end;padding-block:6rem 3rem;overflow:hidden;background:var(--deep)}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,#09182280,#09182240 35%,#091822b8 78%,#091822eb)}.hero-inner{color:#fff}.hero-inner h1{max-width:46rem}.hero-eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ffd9c4;margin-bottom:1.1rem}.hero-eyebrow:before{content:"";width:1.75rem;height:2px;background:var(--sunset);border-radius:2px}.hero h1{font-size:clamp(2.25rem,1.5rem + 3.6vw,4rem);font-weight:800;color:#fff;margin-bottom:1rem}.hero-sub{font-size:clamp(1.05rem,1rem + .5vw,1.35rem);color:#ffffffe6;max-width:40rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.5rem;border-radius:999px;font-weight:650;font-size:1rem;text-decoration:none;border:2px solid transparent;transition:transform .15s ease,background-color .15s ease,border-color .15s ease;min-height:48px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--sunset);color:#fff}.btn-primary:hover{background:var(--sunset-dark);color:#fff}.btn-ghost{border-color:#ffffff8c;color:#fff}.btn-ghost:hover{background:#ffffff1f;border-color:#fff;color:#fff}@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}}.section{padding-block:clamp(3.5rem,2rem + 6vw,6rem)}.section-alt{background:var(--paper-blue)}.section-head{max-width:44rem;margin-bottom:2.5rem}.section-head h2{font-size:clamp(1.65rem,1.35rem + 1.4vw,2.35rem);font-weight:750;margin-bottom:.75rem}.section-head p{color:var(--ink-soft);font-size:1.0625rem}.welcome-card{background:var(--paper-warm);border:1px solid var(--line);border-left:5px solid var(--sunset);border-radius:var(--radius-lg);padding:clamp(1.5rem,1rem + 2.5vw,2.75rem);box-shadow:var(--shadow-sm)}@media(min-width:46em){.welcome-card{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:center}}.welcome-portrait{width:120px;height:120px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-md);margin-bottom:1.25rem}@media(min-width:46em){.welcome-portrait{width:160px;height:160px;margin-bottom:0}}.welcome-card h2{font-size:clamp(1.5rem,1.25rem + 1.2vw,2.1rem);margin-bottom:.9rem}.welcome-card p{font-size:clamp(1.05rem,1rem + .35vw,1.2rem);color:var(--ink-soft)}.welcome-signature{display:flex;flex-direction:column;margin-top:1.25rem;padding-top:1.1rem;border-top:1px solid var(--line)}.welcome-name{font-weight:700;color:var(--ink);font-size:1.05rem}.welcome-role{font-size:.9375rem;color:var(--ink-muted)}.contact-grid{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:2rem}@media(min-width:44em){.contact-grid{grid-template-columns:repeat(3,1fr)}}.contact-card{display:flex;flex-direction:column;gap:.35rem;padding:1.5rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}a.contact-card:hover{border-color:var(--sunset);box-shadow:var(--shadow-md);color:inherit}.contact-icon{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:50%;background:var(--sunset-soft);color:var(--sunset-dark);margin-bottom:.6rem}.contact-icon svg{width:1.25rem;height:1.25rem}.contact-label{font-size:.8125rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.contact-value{font-size:1.15rem;font-weight:650;color:var(--ink);overflow-wrap:anywhere}.contact-note{font-size:.9rem;color:var(--ink-muted)}.wide-figure{margin:2.5rem 0 0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.wide-figure img{width:100%;aspect-ratio:21 / 9;object-fit:cover}@media(max-width:40em){.wide-figure img{aspect-ratio:4 / 3}}.philosophy-img,.region-img{width:100%;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-md)}.philosophy-img{aspect-ratio:4 / 3}.region-img{aspect-ratio:3 / 2;margin-bottom:1.5rem}.price-caption{font-size:.95rem;color:var(--ink-muted);margin-top:1rem}.price-table-wrap{border-radius:var(--radius);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-sm)}@media(min-width:34em){.price-table-wrap{overflow-x:auto}}.price-table{width:100%;border-collapse:collapse}@media(min-width:34em){.price-table{min-width:30rem}}@media(max-width:33.999em){.price-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.price-table tbody tr{display:block;padding:1rem 1.15rem;border-bottom:1px solid var(--line)}.price-table tbody tr:last-child{border-bottom:none}.price-table tbody tr:nth-child(2n){background:var(--paper-blue)}.price-table tbody th,.price-table tbody td{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:0;border-bottom:none;background:none!important}.price-table tbody th{font-size:1.05rem;font-weight:700;margin-bottom:.5rem}.price-table tbody td{padding-block:.2rem;text-align:right}.price-table tbody td:before{content:attr(data-label);font-size:.9rem;font-weight:500;color:var(--ink-muted);text-align:left}}.price-table caption{text-align:left;padding:1.25rem 1.25rem 0;font-weight:700;font-size:1.05rem;color:var(--ink)}.price-table th,.price-table td{padding:.9rem 1.25rem;text-align:left;border-bottom:1px solid var(--line)}.price-table thead th{background:var(--deep);color:#fff;font-size:.875rem;font-weight:650;letter-spacing:.04em;border-bottom:none}.price-table thead th:not(:first-child){text-align:right}.price-table tbody th{font-weight:600;color:var(--ink)}.price-table td{text-align:right;font-variant-numeric:tabular-nums;font-weight:650;white-space:nowrap}.price-table tbody tr:last-child th,.price-table tbody tr:last-child td{border-bottom:none}.price-table tbody tr:nth-child(2n) th,.price-table tbody tr:nth-child(2n) td{background:var(--paper-blue)}.notes{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:46em){.notes{grid-template-columns:repeat(2,1fr)}}.note{padding:1.5rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.note h3{font-size:1.0625rem;font-weight:700;margin-bottom:.5rem;display:flex;align-items:center;gap:.6rem}.note h3 svg{width:1.15rem;height:1.15rem;flex:none;color:var(--sunset-dark)}.note p{color:var(--ink-soft)}.note-highlight{background:var(--sunset-soft);border-color:#f4d3c1}.location{display:grid;gap:1.5rem;align-items:center;grid-template-columns:1fr}@media(min-width:48em){.location{grid-template-columns:1.1fr 1fr;gap:3rem}}.location-card{background:var(--deep);color:#fff;border-radius:var(--radius-lg);padding:clamp(1.75rem,1.25rem + 2vw,2.75rem)}.location-card h2{color:#fff;font-size:clamp(1.5rem,1.25rem + 1.2vw,2.1rem);margin-bottom:1rem}.location-address{font-size:1.35rem;font-weight:650;line-height:1.4;margin-bottom:1.5rem}.location-card p{color:#ffffffd1}.btn-map{background:var(--sunset);color:#fff;margin-top:1.5rem}.btn-map:hover{background:var(--sunset-dark);color:#fff}.btn-map svg{width:1.15rem;height:1.15rem}.location-card .location-hint{font-size:.875rem;margin-top:.7rem;color:#fff9}.region h2{font-size:clamp(1.35rem,1.15rem + .9vw,1.75rem);font-weight:750;margin-bottom:.9rem}.region p{color:var(--ink-soft)}.philosophy{background:var(--deep);color:#fff;position:relative;overflow:hidden}.philosophy-grid{display:grid;gap:2rem;grid-template-columns:1fr;align-items:center}@media(min-width:52em){.philosophy-grid{grid-template-columns:1.15fr 1fr;gap:3.5rem}}.philosophy h2{color:#fff;font-size:clamp(1.85rem,1.4rem + 2.2vw,2.9rem);font-weight:800;margin-bottom:1.5rem}.philosophy-lead{font-size:clamp(1.1rem,1.02rem + .5vw,1.35rem);color:#ffffffe0;max-width:44rem;margin-bottom:1rem}.philosophy-lead:last-of-type{margin-bottom:2.5rem}.qualities{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:0}.qualities li{padding:.5rem 1.1rem;border:1.5px solid rgb(226 98 47 / .9);border-radius:999px;font-size:.975rem;font-weight:600;color:#ffd9c4;background:#e2622f1f}.site-footer{background:#091822;color:#ffffffb8;padding-block:2.75rem;font-size:.9375rem}.footer-inner{display:flex;flex-direction:column;gap:.5rem}.footer-brand{font-weight:750;font-size:1.15rem;color:#fff;letter-spacing:-.01em}.footer-nav{display:flex;flex-wrap:wrap;gap:1.25rem;margin-top:.75rem}.footer-nav a{color:#fffc;text-decoration:none}.footer-nav a:hover{color:#fff;text-decoration:underline}.legal{padding-block:clamp(3rem,2rem + 4vw,5rem)}.legal-head{margin-bottom:2.5rem}.legal-head a{font-size:.9375rem;text-decoration:none;font-weight:600}.legal-head a:hover{text-decoration:underline}.legal h1{font-size:clamp(1.85rem,1.5rem + 1.8vw,2.6rem);margin-top:1rem}.legal-body{max-width:44rem}.legal-body h2{font-size:1.25rem;font-weight:700;margin-top:2.5rem;margin-bottom:.75rem}.legal-body p,.legal-body ul{color:var(--ink-soft);margin-bottom:1rem}.legal-body ul{padding-left:1.25rem}.legal-body li{margin-bottom:.4rem}.legal-body address{font-style:normal;line-height:1.8}
