:root{--bg:#FAF6ED;--surface:#FFFFFF;--ink:#252922;--muted:#4F5549;--accent:#17543F;--accent-2:#762D40;--gold:#A77B2C;--accent-ink:#17543F;--on-accent:#FFFFFF;--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;--radius:4px;--display-weight:550;--display-track:-0.015em}
@font-face{font-family:"Fraunces";src:url("../fonts/fraunces-latin-wght.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url("../fonts/source-sans-3-latin.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
:root{--page-max:1184px;--gutter:clamp(1.125rem,4vw,2rem);--section-y:clamp(3.5rem,9vw,6.5rem);--line:color-mix(in srgb,var(--ink) 16%,transparent);--line-strong:color-mix(in srgb,var(--ink) 26%,transparent)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:clamp(1rem,.96rem + .2vw,1.125rem);line-height:1.5;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}img{height:auto}h1,h2,h3,p,figure,figcaption,ul,blockquote{margin:0}ul{padding:0;list-style:none}a{color:inherit}button{font:inherit;color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:calc(var(--radius) + 2px)}.wrap{width:min(calc(100% - (var(--gutter) * 2)),var(--page-max));margin-inline:auto}html[data-lang=en] .lang-ms{display:none}html[data-lang=ms] .lang-en{display:none}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:220;display:inline-flex;align-items:center;min-height:44px;padding:.6rem 1rem;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);font-weight:700;text-decoration:none;transform:translateY(-250%)}.skip-link:focus-visible{transform:none}.eyebrow{display:flex;align-items:center;gap:.6rem;font-size:.8125rem;font-weight:650;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.eyebrow::before{content:"";flex:none;width:1.5rem;height:2px;background:var(--gold)}.section-head{display:grid;gap:.6rem;margin-bottom:clamp(1.5rem,4vw,2.5rem)}.section-head h2{font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.65rem,1.25rem + 1.4vw,2.5rem);line-height:1.12;letter-spacing:var(--display-track);text-wrap:balance}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.8rem 1.2rem;border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-family:var(--font-body);font-size:.9rem;font-weight:650;line-height:1.2;letter-spacing:.02em;text-align:center;text-decoration:none;cursor:pointer}.btn svg{width:18px;height:18px;flex:none}.btn--inverse{background:#fff;border-color:#fff;color:var(--accent)}.sample-chip,.photo-label{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .45rem;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.65rem;font-weight:650;line-height:1.2;letter-spacing:.06em;white-space:nowrap}.photo-label{position:absolute;left:.6rem;bottom:.6rem;z-index:2}.cta-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem}.cta-item{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.cta-item .sample-chip{flex:none}.link-arrow{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;font-size:.9rem;letter-spacing:.02em;text-decoration:none;color:var(--accent)}.link-arrow svg{width:16px;height:16px;flex:none}.site-header{position:sticky;top:0;z-index:60;background:var(--bg);border-bottom:1px solid transparent}.site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 12px 24px -20px rgba(0,0,0,.55)}.header-inner{display:flex;align-items:center;gap:.6rem;min-height:54px;padding-block:.25rem}.wordmark{display:flex;align-items:center;min-height:44px;margin-right:auto;max-width:13rem;font-family:var(--font-body);font-size:.68rem;font-weight:700;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.nav{display:none}@media (max-width:999px){.header-inner{flex-wrap:wrap;row-gap:.1rem;min-height:50px;padding-block:.15rem}.nav{order:3;display:flex;flex:0 0 100%;align-items:center;gap:18px;min-width:0}.nav a{position:relative;display:inline-flex;align-items:center;min-height:34px;padding:0;color:var(--muted);font-size:13px;font-weight:650;letter-spacing:.01em;text-decoration:none;white-space:nowrap}.nav a[aria-current=page]{color:var(--ink)}.header-inner .nav a::after{left:0;right:0;bottom:0;height:2px}}.lang-switch{position:relative;display:inline-flex;flex:none;padding:2px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface)}.lang-switch::before{content:"";position:absolute;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);border-radius:999px;background:var(--accent)}html[data-lang=en] .lang-switch::before{transform:translateX(100%)}.lang-switch button{position:relative;z-index:1;min-width:40px;min-height:40px;padding:0 .4rem;border:0;border-radius:999px;background:none;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;cursor:pointer}html[data-lang=ms] .lang-switch [data-set-lang=ms],html[data-lang=en] .lang-switch [data-set-lang=en]{color:var(--on-accent)}.hero{padding-block:.75rem clamp(1.5rem,4vw,3rem)}.hero-inner{display:grid;gap:.75rem}.hero-photo{display:grid;gap:.75rem;min-width:0}.hero-figure{margin:0;min-width:0}.hero-media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius);background:var(--surface)}.hero-media picture{display:block;width:100%;height:100%}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-caption{padding-top:.35rem;font-size:.75rem;line-height:1.4;color:var(--muted)}.culture-note{max-width:52ch;padding:.5rem 0 .5rem .75rem;border-left:2px solid var(--gold)}.culture-title{font-size:.8rem;font-weight:700;line-height:1.3;letter-spacing:.03em}.culture-text{margin-top:.25rem;font-size:.8rem;line-height:1.45;color:var(--muted)}.hero-copy{display:grid;gap:.75rem;min-width:0}.hero-name{font-size:.75rem;font-weight:700;line-height:1.35;letter-spacing:.12em;text-transform:uppercase}.hero-title{max-width:17ch;font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(2rem,1.4rem + 2.4vw,3.75rem);line-height:1.08;letter-spacing:var(--display-track);text-wrap:balance;overflow-wrap:normal;hyphens:manual}.hero-value{max-width:46ch;color:var(--muted);font-size:1rem}.hero-cta{display:grid;gap:.4rem;margin-top:.15rem}.hero-cta .cta-item{display:flex;width:100%}.hero-cta .btn{width:auto;flex:1 1 auto;min-width:0}.hero-secondary{justify-self:start}.services{padding-block:var(--section-y)}.services-grid{display:grid;gap:1.25rem}.card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.card--text{border-top:3px solid var(--accent-2);justify-content:center}.card-media{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background:var(--surface)}.card-media img{width:100%;height:100%;object-fit:cover}.card-body{display:grid;gap:.4rem;padding:1rem;align-content:start}.card--text .card-body{padding:clamp(1.25rem,4vw,1.75rem)}.card h3{font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem);line-height:1.1;letter-spacing:var(--display-track)}.card-body p{color:var(--muted);font-size:.98rem;line-height:1.5}.card-link{display:inline-flex;align-items:center;gap:.4rem;justify-self:start;min-height:44px;font-size:.9rem;font-weight:650;line-height:1.2;text-decoration:none;color:var(--accent)}.card-link svg{width:15px;height:15px;flex:none}.statement{padding-block:clamp(2.5rem,6vw,4.5rem);border-block:1px solid var(--line);background:var(--surface)}.statement-inner{display:grid;gap:clamp(1.75rem,4vw,2.75rem)}.statement-quote{display:grid;gap:1rem}.statement-rule{display:block;width:2.5rem;height:2px;background:var(--gold)}.statement-text{max-width:22ch;font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.6rem,1.2rem + 2vw,2.85rem);line-height:1.2;letter-spacing:var(--display-track);color:var(--accent-2);overflow-wrap:normal;hyphens:manual}.process{display:grid;gap:1rem}.process-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem;margin:0;padding:0;list-style:none}.process-step{display:grid;gap:.25rem;min-width:0;padding-top:.85rem;border-top:1px solid var(--gold)}.process-num{font-family:var(--font-display);font-weight:650;font-size:.85rem;line-height:1.2;letter-spacing:.08em;color:var(--accent-2)}.process-label{font-size:.95rem;font-weight:650;line-height:1.3}.testimonials{padding-block:0 var(--section-y)}.testimonial-grid{display:grid;gap:1rem}.testimonial{display:grid;align-content:start;gap:.8rem;min-width:0;padding:clamp(1.25rem,4vw,1.75rem);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.testimonial .sample-chip{justify-self:start}.testimonial-quote{font-family:var(--font-display);font-style:italic;font-weight:var(--display-weight);font-size:clamp(1.15rem,1.05rem + .4vw,1.4rem);line-height:1.35;letter-spacing:0}.testimonial-author{font-size:.8rem;font-weight:650;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cta-band{padding-block:var(--section-y)}.cta-band-inner{display:grid;gap:1.1rem;padding:clamp(1.5rem,5vw,3rem);border-radius:var(--radius);background:var(--accent);color:var(--on-accent)}.cta-band-inner h2{max-width:24ch;font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.6rem,1.2rem + 1.8vw,2.4rem);line-height:1.12;letter-spacing:var(--display-track);text-wrap:balance}.cta-band .cta-cluster .sample-chip{background:#fff;border-color:#fff;color:var(--accent)}.page-head{padding-block:clamp(1.5rem,4vw,2.5rem) clamp(1.25rem,3vw,2rem);border-bottom:1px solid var(--line)}.page-title{max-width:17ch;font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(2rem,1.4rem + 2.4vw,3.75rem);line-height:1.08;letter-spacing:var(--display-track);text-wrap:balance;overflow-wrap:normal;hyphens:manual}.prices{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin-top:1rem}.price-label{font-size:.75rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.price-value{font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.4rem,1.1rem + .8vw,1.9rem);line-height:1.2}.service-list{padding-block:clamp(1.5rem,4vw,2.5rem) var(--section-y)}.service-rows{display:grid;gap:1.25rem}.service-card{display:grid;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);scroll-margin-top:5rem}.service-card--text{border-top:3px solid var(--accent-2)}.service-media{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background:var(--surface)}.service-media img{width:100%;height:100%;object-fit:cover}.service-body{display:grid;gap:.5rem;align-content:center;padding:clamp(1rem,3vw,1.5rem)}.service-body h2{font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.5rem,1.2rem + .9vw,2rem);line-height:1.12;letter-spacing:var(--display-track)}.service-body p{max-width:44ch;color:var(--muted)}.visit,.contact{padding-block:clamp(1.5rem,4vw,2.5rem) var(--section-y)}.visit-area,.contact-area{margin-bottom:clamp(1.25rem,4vw,2rem);font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.8rem,1.3rem + 2vw,3rem);line-height:1.15;letter-spacing:var(--display-track);overflow-wrap:normal;hyphens:manual}.info-card,.cta-card,.contact-card{display:grid;gap:.75rem;max-width:40rem;padding:clamp(1.25rem,4vw,2rem);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.cta-card{margin-top:1rem}.info-label{font-size:.75rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hours-value,.contact-number{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.5rem,1.2rem + 1.5vw,2.25rem);line-height:1.15}.contact-card{max-width:44rem;margin-top:1rem}.contact-note{max-width:52ch;color:var(--muted);font-size:.92rem}.site-footer{padding-block:clamp(2rem,5vw,3rem);border-top:1px solid var(--line);background:var(--surface)}.footer-inner{display:grid;gap:.5rem}.footer-name{font-family:var(--font-display);font-weight:var(--display-weight);font-size:clamp(1.25rem,1rem + .8vw,1.6rem);line-height:1.2;letter-spacing:var(--display-track)}.footer-meta{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.86rem}.footer-meta svg{width:14px;height:14px;flex:none;color:var(--accent)}.footer-note,.footer-footnote{color:var(--muted)}.footer-note{font-size:.86rem}.footer-footnote{font-size:.75rem;line-height:1.5}.footer-nav{display:flex;flex-wrap:wrap;gap:0 1rem}.footer-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.8rem;font-weight:650;text-decoration:none}.footer-nav a[aria-current=page]{color:var(--ink)}.wa-dock{display:none}@media (max-width:719px){body{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom))}.wa-dock{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;align-items:center;gap:.45rem;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -8px 24px -20px rgba(0,0,0,.55);visibility:hidden;pointer-events:none;transform:translateY(100%)}.wa-dock.is-visible,body:not([data-page=index]) .wa-dock{visibility:visible;pointer-events:auto;transform:none}.wa-dock-link{display:inline-flex;flex:1 1 auto;align-items:center;justify-content:center;gap:.4rem;min-width:0;min-height:48px;padding:0 .7rem;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-size:.78rem;font-weight:650;line-height:1.15;text-decoration:none;white-space:nowrap}.wa-dock-link svg{width:17px;height:17px;flex:none}.wa-dock .sample-chip{flex:none;font-size:.55rem;padding:.22rem .36rem}}@media (min-width:720px){.wa-dock{display:none}}@media (max-width:380px){.wa-dock{padding-inline:.6rem;gap:.4rem}.wa-dock-link{padding:0 .5rem;gap:.35rem;font-size:.72rem}.wa-dock-link svg{display:none}.wa-dock .sample-chip{font-size:.5rem;padding:.2rem .3rem}}@media (min-width:600px){.process-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.process-step{padding:.85rem .9rem 0}.process-step:first-child{padding-left:0}.process-step:last-child{padding-right:0}}@media (min-width:760px){.services-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.service-card{grid-template-columns:1fr 1fr}.service-card:nth-child(even) .service-media{order:2}.service-card--text{grid-template-columns:1fr}.service-card--text .service-body{padding-block:clamp(1.75rem,4vw,2.5rem)}}@media (min-width:900px){.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}@media (min-width:1000px){.header-inner{min-height:64px;padding-block:.35rem;gap:1.25rem}.wordmark{max-width:20rem;font-size:.76rem}.nav{display:flex;align-items:center;gap:.1rem;margin-left:auto}.nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 .7rem;color:var(--muted);font-size:.8rem;font-weight:650;letter-spacing:.02em;text-decoration:none;white-space:nowrap}.nav a[aria-current=page]{color:var(--ink)}.lang-switch{margin-left:.25rem}.hero{padding-block:clamp(1rem,3vw,2.25rem) clamp(2rem,4vw,3rem)}.hero-inner{grid-template-columns:1.1fr 1fr;grid-template-areas:"photo copy" "cue copy";column-gap:2rem;row-gap:.75rem;align-items:center}.hero-photo{grid-area:photo}.hero-copy{grid-area:copy;align-self:center;gap:.6rem}.culture-note{grid-area:cue;align-self:start}.hero-secondary{margin-top:.15rem}.footer-inner{grid-template-columns:1fr auto;align-items:start;column-gap:3rem}.footer-name,.footer-meta,.footer-note{grid-column:1}.footer-nav{display:none}.footer-footnote{grid-column:2;grid-row:1/4;justify-self:end;text-align:right}}
html{scroll-behavior:smooth}@keyframes reveal-up{from{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes title-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes title-out{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-12px)}}html.js .reveal{opacity:.6;transform:translateY(12px);transition:opacity .6s cubic-bezier(.2,.7,0,1),transform .6s cubic-bezier(.2,.7,0,1)}html.js .reveal.in{opacity:1;transform:none}@supports (animation-timeline:view()){html.js .reveal{transition:none;animation:reveal-up linear both;animation-timeline:view();animation-range:entry 0% cover 30%}html[data-motion=calm] .reveal{animation-range:entry 0% cover 24%}}.btn{transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .15s ease}.btn:active{transform:scale(.98)}.btn svg,.link-arrow svg,.card-link svg{transition:transform .3s cubic-bezier(.2,.7,0,1)}.btn:hover svg,.btn:focus-visible svg,.link-arrow:hover svg,.link-arrow:focus-visible svg,.card-link:hover svg,.card-link:focus-visible svg{transform:translateX(4px)}.nav a::after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:.5rem;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.2,.7,0,1)}.nav a:hover::after,.nav a:focus-visible::after,.nav a[aria-current=page]::after{transform:scaleX(1)}.lang-switch::before{transition:transform .35s cubic-bezier(.2,.7,0,1)}.lang-switch button{transition:color .25s ease}.site-header{transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.card-media img{transition:transform .6s cubic-bezier(.2,.7,0,1)}.card-media:hover img,.card-media:focus-visible img{transform:scale(1.03)}.wa-dock{transition:transform .25s ease,visibility .25s ease}@view-transition{navigation:auto}.site-header{view-transition-name:site-header}.page-title{view-transition-name:page-title}::view-transition-old(page-title){animation:title-out .28s ease both}::view-transition-new(page-title){animation:title-in .45s cubic-bezier(.2,.7,0,1) both}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}html.js .reveal{opacity:1!important;transform:none!important}.card-media:hover img,.card-media:focus-visible img{transform:none}.btn:active{transform:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
