@import "https://fonts.googleapis.com/css2?family=Libre+Caslon+Text:ital@0;1&family=Plus+Jakarta+Sans:wght@400;500;600&display=swap";:root{color:#1e1b18;background:var(--white);font-synthesis:none;text-rendering:optimizelegibility;--ink:#1e1b18;--body:#464742;--accent:#eddec6;--accent-ink:#695d4a;--brand-muted:#5e5e5b;--border-muted:#c7c7bf;--border-warm:#d3c5ae;--surface-soft:#f9f7f2;--surface-warm:#fbf2ed;--surface-photo:#e9e1dc;--surface-photo-alt:#efe6e2;--accent-hover:#e6d2b1;--accent-muted:#7d6f5c;--control-outline:#777871;--control-focus:#8b785e;--placeholder:#6b7280;--status-success:#3f704f;--status-error:#9d3e36;--white:#fff;--line:#c7c7bf33;--border-subtle:#c7c7bf1a;--border-default:#c7c7bf4d;--border-strong:#c7c7bf80;--accent-surface:#eddec666;--accent-surface-strong:#eddec699;--accent-tint:#eddec680;--serif:"Libre Caslon Text", Georgia, "Times New Roman", serif;font-family:Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--white);min-width:320px;margin:0;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img,svg{max-width:100%}a:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #6c614e73}.site-header{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffdb;padding:0 40px;position:sticky;top:0}.header-inner{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;width:100%;max-width:1040px;min-height:70px;margin:0 auto;display:grid}.brand{white-space:nowrap;justify-self:start;align-items:baseline;gap:8px;display:flex}.brand span{font-family:var(--serif);font-size:24px;line-height:1.4}.brand small{color:var(--body);font-size:16px;line-height:1.6}.main-nav{align-items:center;gap:32px;display:flex}.main-nav a{color:var(--body);letter-spacing:.1em;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600;line-height:1.2;transition:background-color .18s,color .18s}.main-nav a:hover{background:var(--accent-surface);color:var(--ink)}.main-nav a.active{color:var(--brand-muted);border-radius:0;position:relative}.main-nav a.active:after{background:var(--accent);content:"";height:2px;position:absolute;bottom:0;left:12px;right:12px}.button{background:var(--accent);color:var(--accent-ink);letter-spacing:.05em;border-radius:999px;justify-content:center;align-items:center;font-size:14px;font-weight:600;transition:background-color .18s,transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.button:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 8px 20px #6c614e1f}.button-small{min-width:112px;min-height:38px;padding:10px 24px}.header-appointment{justify-self:end}.nav-appointment-mobile,.menu-button{display:none}.hero{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:24px;width:calc(100% - 48px);max-width:1040px;margin:120px auto 0;display:grid}.hero-copy{padding-right:48px}h1,h2,h3,blockquote,.footer-brand>p{font-family:var(--serif);margin:0;font-weight:400}.hero h1{letter-spacing:-.025em;font-size:clamp(40px,3.75vw,48px);line-height:1.2}.accent-line{background:var(--accent);width:64px;height:2px;margin:23px 0 22px;display:block}.hero-copy>p{color:var(--body);margin:0;font-size:18px;line-height:1.6}.hero-role{font-weight:600;color:var(--ink)!important}.hero-description{margin-top:12px!important}.hero-button{min-height:50px;margin-top:48px;padding:16px 32px}.hero-image-wrap{background:var(--surface-photo);border-radius:32px;height:635px;overflow:hidden;box-shadow:0 24px 48px -12px #00000014}.hero-image-wrap img{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.services{width:calc(100% - 48px);max-width:1040px;margin:0 auto;padding:120px 0}.section-heading{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.section-heading h2{font-size:32px;line-height:1.3}.section-heading p{max-width:672px;color:var(--body);margin:0;font-size:16px;line-height:1.6}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:64px;display:grid}.service-card{border:1px solid var(--accent-tint);background:var(--white);border-radius:24px;flex-direction:column;min-height:432px;padding:40px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;box-shadow:0 1px 2px #0000000d}.service-card:hover{border-color:#d6bf9cbf;transform:translateY(-4px);box-shadow:0 18px 42px #4b423612}.service-icon{background:var(--accent);border-radius:50%;place-items:center;width:56px;height:56px;margin-bottom:32px;display:grid}.service-icon svg{width:20px;height:20px;fill:var(--accent-ink)}.service-card h3{min-height:68px;margin-bottom:16px;font-size:24px;line-height:1.4}.service-card p{color:var(--body);margin:0;font-size:16px;line-height:1.625}.service-card>a{color:var(--accent-ink);letter-spacing:.05em;align-items:center;gap:8px;margin-top:auto;padding-top:32px;font-size:14px;font-weight:600;display:inline-flex}.service-card>a svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:14px;height:14px;transition:transform .18s}.service-card>a:hover svg{transform:translate(4px)}.quote-section{border-top:1px solid var(--border-subtle);flex-direction:column;justify-content:center;align-items:center;gap:40px;min-height:451px;padding:120px 24px;scroll-margin-top:70px;display:flex}.quote-line{background:var(--accent);width:48px;height:2px}.quote-section blockquote{max-width:680px;color:var(--body);text-align:center;font-size:32px;font-style:italic;line-height:1.3}.quote-copy{max-width:680px;color:var(--body);text-align:center;font-size:16px;line-height:1.65}.quote-copy p{margin:0}.quote-copy p+p{margin-top:14px}.site-footer{border-top:1px solid var(--line);background:var(--accent-surface-strong);align-items:center;min-height:240px;padding:64px 40px;scroll-margin-top:70px;display:flex}.footer-inner{grid-template-columns:minmax(0,1.25fr) minmax(180px,.75fr) minmax(0,1.25fr);align-items:start;column-gap:48px;width:100%;max-width:1040px;margin:0 auto;display:grid}.footer-brand>p{color:var(--brand-muted);margin:0 0 15px;font-size:24px;line-height:1.4}.footer-role{color:var(--body);margin:-8px 0 10px;font-size:14px;line-height:1.4;display:block}.footer-brand small{max-width:320px;color:var(--body);font-size:16px;line-height:1.6;display:block}.footer-links{text-align:center;flex-direction:column;justify-self:center;align-items:center;gap:14px;display:flex}.footer-links a,.footer-links span{color:var(--body);letter-spacing:.05em;font-size:14px;font-weight:600;line-height:1.2}.footer-links a:hover{color:var(--accent-ink)}.footer-meta{text-align:right;justify-self:end}.footer-copyright,.footer-credit{color:var(--body);letter-spacing:.05em;margin:0;font-size:14px;line-height:1.45}.footer-copyright{font-weight:600}.footer-credit{margin-top:14px;font-weight:400}.about-main{flex-direction:column;gap:120px;width:calc(100% - 48px);max-width:1040px;margin:0 auto;padding:120px 0 286px;display:flex}.about-intro{grid-template-columns:419px minmax(0,1fr);align-items:start;gap:113px;min-height:628px;display:grid}.about-portrait{border:1px solid var(--border-default);background:var(--surface-photo-alt);border-radius:16px;height:557px;margin-top:35px;overflow:hidden;box-shadow:48px 48px 70px -55px #6c614e59}.about-copy{padding-top:14px}.about-portrait img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.about-copy h1{letter-spacing:-.025em;font-size:48px;line-height:1.2}.about-story{flex-direction:column;gap:24px;margin-top:24px;display:flex}.about-story p{color:var(--body);margin:0;font-size:16px;line-height:1.625}.about-story p:first-child{font-size:18px;line-height:1.625}.credentials{border-left:2px solid #695d4a4d;margin-top:48px;padding-left:24px}.credentials h2{letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2}.credentials ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.credentials li{color:var(--body);align-items:flex-start;gap:8px;font-size:16px;line-height:1.6;display:flex}.credentials svg,.approach-grid svg,.work-card>svg{fill:none;stroke:var(--accent-ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:none}.credentials svg{width:17px;height:21px;margin-top:2px}.approach{flex-direction:column;gap:64px;display:flex}.about-section-heading{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.about-section-heading>p{color:var(--accent-ink);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:14px;font-weight:600;line-height:1.2}.about-section-heading h2,.work-heading h2{font-size:32px;line-height:1.3}.about-section-heading>span{background:var(--accent-ink);width:64px;height:1px}.approach-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.approach-grid article{border:1px solid var(--line);background:var(--accent-surface);border-radius:12px;min-height:328px;padding:48px}.approach-grid svg{width:28px;height:28px}.approach-grid h3{margin:24px 0 16px;font-size:24px;line-height:1.4}.approach-grid p{color:var(--body);margin:0;font-size:16px;line-height:1.625}.about-quote{border:1px solid var(--border-subtle);background:var(--accent-surface);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:350px;padding:54px 64px 64px;display:flex;position:relative;overflow:hidden}.about-quote:before{filter:blur(45px);content:"";background:#f9f7f2cc;border-radius:50%;width:512px;height:128px;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.quote-mark,.about-quote blockquote,.about-quote cite{position:relative}.quote-mark{color:#695d4a33;height:34px;font-family:Georgia,serif;font-size:56px;font-weight:700;line-height:.9}.about-quote blockquote{max-width:896px;font-size:24px;font-style:italic;line-height:1.625}.about-quote cite{color:var(--accent-ink);letter-spacing:.1em;text-transform:uppercase;font-size:14px;font-style:normal;font-weight:600;line-height:1.2}.work{flex-direction:column;gap:48px;display:flex}.work-heading{padding:0}.work-heading p{color:var(--body);margin:16px 0 0;font-size:16px;line-height:1.6}.work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.work-card,.work-cta{border:1px solid var(--accent-tint);background:var(--accent-surface);border-radius:12px;min-height:200px}.work-card{flex-direction:column;justify-content:space-between;align-items:flex-start;padding:24px;display:flex}.work-card-featured{grid-column:span 2;padding:32px}.work-card>svg{width:27px;height:27px}.work-card h3{letter-spacing:.025em;margin:0 0 8px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.25}.work-card-featured h3{font-family:var(--serif);letter-spacing:0;font-size:24px;font-weight:400;line-height:1.4}.work-card p{color:var(--body);margin:0;font-size:14px;line-height:1.45}.work-cta{text-align:center;flex-direction:column;grid-column:span 3;justify-content:center;align-items:center;gap:16px;padding:32px;display:flex;position:relative;overflow:hidden}.work-cta:after{color:#695d4a0a;content:"✓";font-size:140px;line-height:1;position:absolute;bottom:-34px;right:18px}.work-cta h3{color:var(--accent-muted);margin:0;font-size:24px;line-height:1.4}.about-cta-button{border:1px solid var(--control-outline);min-height:42px;padding:12px 32px}.contact-main{flex-direction:column;gap:48px;width:calc(100% - 48px);max-width:1040px;margin:0 auto;padding:120px 0;display:flex}.contact-heading{text-align:center;flex-direction:column;align-items:center;gap:15px;max-width:672px;margin:0 auto;display:flex}.contact-heading h1{font-size:48px;line-height:1.2}.contact-heading p{color:var(--body);margin:0 0 18px;font-size:18px;line-height:1.6}.contact-heading>span{background:var(--border-warm);width:64px;height:1px}.contact-layout{grid-template-columns:396px minmax(0,1fr);align-items:start;gap:64px;display:grid}.contact-sidebar{flex-direction:column;gap:32px;display:flex}.direct-contact,.social-contact,.contact-form-card{border:1px solid var(--border-default);border-radius:12px}.direct-contact{background:var(--surface-soft);min-height:350px;padding:32px}.direct-contact h2,.social-contact h2,.contact-form-card h2{font-family:var(--serif);margin:0;font-size:24px;font-weight:400;line-height:1.4}.contact-details{flex-direction:column;gap:24px;margin-top:24px;display:flex}.contact-row{align-items:flex-start;gap:16px;display:flex}.contact-row>svg,.social-list svg{fill:none;width:20px;height:20px;stroke:var(--accent-ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:none}.contact-row>svg{margin-top:4px}.contact-row>div{flex-direction:column;gap:4px;display:flex}.contact-row strong{color:var(--body);letter-spacing:.05em;font-size:14px;font-weight:600;line-height:1.2}.contact-row span,.contact-row a{font-size:16px;line-height:1.6}.contact-row a:hover{color:var(--accent-ink)}.whatsapp-row{background:var(--surface-warm);border:1px solid #d5c4ad80;border-radius:8px;padding:16px}.whatsapp-title{align-items:center;gap:8px;display:flex}.whatsapp-title small{background:var(--accent-ink);color:var(--white);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:10px;line-height:1.5}.social-contact{background:var(--white);min-height:244px;padding:32px}.social-list{flex-direction:column;gap:16px;margin-top:24px;display:flex}.social-list>a{border-radius:8px;align-items:center;gap:16px;min-height:42px;padding:8px 12px;font-size:16px;line-height:1.6;transition:background-color .18s,color .18s;display:flex}.social-list>a:hover{background:var(--accent-surface);color:var(--accent-ink)}.contact-form-card{border-color:var(--border-strong);background:var(--white);border-radius:16px;min-height:758px;padding:40px;scroll-margin-top:90px;box-shadow:0 1px 2px #0000000d}.contact-form-card>p{color:var(--body);margin:7px 0 0;font-size:16px;line-height:1.6}.contact-form-card form{flex-direction:column;gap:24px;margin-top:25px;display:flex}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.contact-form-card label{flex-direction:column;gap:8px;display:flex}.contact-form-card label>span{color:var(--ink);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:600;line-height:1.35}.contact-form-card input,.contact-form-card select,.contact-form-card textarea{border:1px solid var(--border-warm);background:var(--white);width:100%;color:var(--ink);font:inherit;border-radius:8px;font-size:16px;transition:border-color .16s,box-shadow .16s}.contact-form-card input,.contact-form-card select{height:50px;padding:0 16px}.contact-form-card select{appearance:auto}.contact-form-card textarea{resize:vertical;min-height:146px;padding:14px 16px;line-height:1.5}.contact-form-card input:focus,.contact-form-card select:focus,.contact-form-card textarea:focus{border-color:var(--control-focus);outline:none;box-shadow:0 0 0 3px #d5c4ad47}.contact-form-card button{background:var(--accent);min-height:56px;color:var(--accent-ink);font:inherit;cursor:pointer;border:0;border-radius:8px;margin-top:6px;font-size:16px;transition:background-color .18s,transform .18s}.contact-form-card button:hover{background:var(--accent-hover);transform:translateY(-1px)}.contact-form-card button:disabled,.appointment-confirm>button:disabled{cursor:wait;opacity:.7;transform:none}.form-status{margin:-8px 0 0;font-size:13px;line-height:1.5}.form-status.pending{color:var(--body)}.form-status.success{color:var(--status-success)}.form-status.error{color:var(--status-error)}.header-appointment.is-active{box-shadow:inset 0 0 0 1px #6c614e33,0 1px 2px #0000000d}.appointment-main{flex-direction:column;gap:48px;width:calc(100% - 48px);max-width:768px;margin:0 auto;padding:135px 0 125px;display:flex}.appointment-heading{text-align:center;flex-direction:column;align-items:center;gap:23px;display:flex}.appointment-heading h1{font-size:48px;line-height:1.2}.appointment-heading>span{background:var(--border-muted);width:64px;height:1px}.appointment-heading p{max-width:576px;color:var(--body);margin:0;font-size:18px;line-height:1.6}.appointment-heading .appointment-price{background:var(--accent);color:var(--accent-ink);border-radius:999px;margin-top:-8px;padding:8px 16px;font-size:15px;font-weight:600;line-height:1.4}.appointment-card{background:#f2ece033;border:1px solid #d3c5ae80;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding:48px 48px 38px;display:grid;box-shadow:0 1px 2px #0000000d}.appointment-picker{flex-direction:column;gap:32px;display:flex}.date-picker,.time-picker,.appointment-details{min-width:0}.date-picker h2,.time-picker h2,.appointment-details h2{font-family:var(--serif);align-items:center;gap:8px;margin:0;font-size:24px;font-weight:400;line-height:1.4;display:flex}.date-picker h2 svg,.time-picker h2 svg,.appointment-details h2 svg,.appointment-notice svg{fill:none;width:20px;height:20px;stroke:var(--accent-ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;flex:none}.calendar{border:1px solid var(--border-default);background:var(--white);border-radius:8px;margin-top:16px;padding:16px}.calendar-header{justify-content:space-between;align-items:center;min-height:29px;display:flex}.calendar-header strong{letter-spacing:.05em;text-transform:uppercase;font-size:14px;font-weight:600;line-height:1.2}.calendar-header button{width:30px;height:30px;color:var(--body);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0;font-size:29px;line-height:1}.calendar-header button:hover:not(:disabled){background:var(--accent-tint)}.calendar-header button:disabled{opacity:.25;cursor:default}.calendar-weekdays,.calendar-days{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{margin:7px 0 6px}.calendar-weekdays span{color:var(--body);font-size:12px;line-height:1.4}.calendar-days{row-gap:3px}.calendar-days button,.calendar-empty{justify-self:center;width:34px;height:34px}.calendar-days button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0;font-size:14px}.calendar-days button:hover:not(:disabled):not(.selected){background:var(--accent-tint)}.calendar-days button.selected{background:var(--accent-ink);color:var(--white);box-shadow:0 1px 2px #0000000d}.calendar-days button:disabled{color:var(--control-outline);opacity:.28;cursor:default}.time-picker>p{color:var(--body);margin:15px 0 16px;font-size:12px;line-height:1.4}.time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.time-grid button{border:1px solid var(--border-default);background:var(--white);min-height:52px;color:var(--ink);font:inherit;cursor:pointer;border-radius:4px;font-size:16px}.time-grid button:hover,.time-grid button.selected{border-color:var(--accent-ink);background:var(--surface-warm);color:var(--accent-ink)}.appointment-details{flex-direction:column;display:flex}.appointment-fields{flex-direction:column;gap:24px;margin-top:24px;display:flex}.appointment-fields label{flex-direction:column;gap:8px;display:flex}.appointment-fields label>span,.appointment-fields legend{color:var(--body);letter-spacing:.04em;text-transform:uppercase;font-size:14px;font-weight:600;line-height:1.2}.appointment-fields input:not([type=radio]){border:1px solid var(--border-warm);background:var(--white);width:100%;height:51px;color:var(--ink);font:inherit;border-radius:4px;padding:0 16px;font-size:16px}.appointment-fields input::placeholder{color:var(--placeholder)}.appointment-fields input:focus{border-color:var(--control-focus);outline:none;box-shadow:0 0 0 3px #d5c4ad47}.appointment-fields fieldset{border:0;margin:0;padding:0}.appointment-fields legend{margin-bottom:12px}.radio-group{align-items:center;gap:24px;display:flex}.radio-group label{cursor:pointer;flex-direction:row;align-items:center;gap:8px;display:flex}.radio-group input{width:20px;height:20px;accent-color:var(--accent-ink);margin:0}.radio-group label>span{color:var(--ink);letter-spacing:0;text-transform:none;font-size:16px;font-weight:400}.appointment-confirm{border-top:1px solid var(--line);flex-direction:column;gap:24px;margin-top:24px;padding-top:24px;display:flex}.appointment-notice{background:var(--surface-warm);border-radius:4px;align-items:flex-start;gap:12px;min-height:99px;padding:16px;display:flex}.appointment-notice p{color:var(--body);margin:0;font-size:12px;line-height:1.4}.appointment-confirm>button{background:var(--accent);min-height:50px;color:var(--accent-ink);font:inherit;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 8px 24px #695d4a26}.appointment-confirm>button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:14px;height:14px}.appointment-confirm>button:hover{background:var(--accent-hover);transform:translateY(-1px)}@media (width<=900px){.site-header{padding:0 24px}.header-inner{grid-template-columns:1fr auto}.menu-button{background:var(--accent);width:42px;height:42px;color:var(--accent-ink);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:8px;display:grid}.menu-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:22px;height:22px}.main-nav{border:1px solid var(--line);opacity:0;pointer-events:none;background:#fffffffa;border-radius:18px;flex-direction:column;align-items:stretch;gap:2px;padding:14px;transition:opacity .18s,transform .18s;position:absolute;top:70px;left:24px;right:24px;transform:translateY(-8px);box-shadow:0 20px 50px #3d362c1f}.main-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{padding:13px 16px}.main-nav a.active:after{display:none}.nav-appointment-mobile{background:var(--accent);text-align:center;margin-top:6px;display:block}.header-appointment{display:none}.hero{grid-template-columns:1fr;gap:56px;margin-top:72px}.hero-copy{max-width:620px;padding-right:0}.hero-image-wrap{height:min(680px,110vw)}.service-grid{grid-template-columns:1fr}.service-card,.service-card h3{min-height:0}.about-main{gap:96px;padding-top:72px;padding-bottom:160px}.about-intro{grid-template-columns:1fr;gap:48px;min-height:0}.about-copy{grid-row:1;max-width:680px;padding-top:0}.about-portrait{grid-row:2;width:min(100%,620px);height:min(740px,112vw);margin-top:0}.approach-grid{grid-template-columns:1fr}.approach-grid article{min-height:0}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-card-featured,.work-cta{grid-column:span 2}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:36px 32px}.footer-meta{text-align:left;grid-column:1/-1;justify-self:start;margin-top:24px}.footer-links{text-align:left;justify-self:start;align-items:flex-start}.contact-main{padding-top:72px;padding-bottom:96px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.direct-contact,.social-contact{min-height:0}.appointment-main{max-width:680px;padding-top:72px;padding-bottom:96px}.appointment-card{grid-template-columns:1fr;gap:40px}}@media (width<=600px){.site-header{padding:0 18px}.header-inner{min-height:64px}.brand{gap:6px}.brand span{font-size:19px}.brand small{font-size:13px}.main-nav{top:64px;left:18px;right:18px}.hero{gap:44px;width:calc(100% - 36px);margin-top:52px}.hero h1{font-size:38px;line-height:1.18}.hero-copy>p{font-size:16px}.hero-button{width:100%;margin-top:36px}.hero-image-wrap{border-radius:24px;height:112vw;max-height:540px}.services{width:calc(100% - 36px);padding:88px 0}.section-heading h2{font-size:30px}.service-grid{gap:18px;margin-top:44px}.service-card{border-radius:20px;padding:30px}.quote-section{gap:32px;min-height:480px;padding:88px 24px;scroll-margin-top:64px}.quote-section blockquote{font-size:27px}.site-footer{min-height:0;padding:72px 24px;scroll-margin-top:64px;display:block}.footer-inner{grid-template-columns:1fr;gap:48px}.footer-links{grid-column:1;align-items:flex-start}.about-main{gap:80px;width:calc(100% - 36px);padding-top:52px;padding-bottom:112px}.about-copy h1{font-size:38px;line-height:1.18}.about-story p:first-child,.about-story p{font-size:16px}.credentials{margin-top:36px;padding-left:18px}.credentials li{font-size:14px}.about-portrait{height:120vw;max-height:520px}.approach{gap:44px}.about-section-heading h2,.work-heading h2{font-size:30px}.approach-grid{gap:18px}.approach-grid article{padding:30px}.about-quote{min-height:0;padding:48px 24px}.about-quote blockquote{font-size:21px;line-height:1.55}.work{gap:36px}.work-grid{grid-template-columns:1fr}.work-card,.work-card-featured,.work-cta{grid-column:1;min-height:180px}.work-card-featured{padding:24px}.contact-main{width:calc(100% - 36px);padding-top:52px;padding-bottom:80px}.contact-heading h1{font-size:38px}.contact-heading p{font-size:16px}.contact-sidebar{grid-template-columns:1fr}.direct-contact,.social-contact{padding:26px}.contact-form-card{min-height:0;padding:26px;scroll-margin-top:76px}.form-row{grid-template-columns:1fr}.appointment-main{width:calc(100% - 36px);padding-top:52px;padding-bottom:80px}.appointment-heading h1{font-size:38px}.appointment-heading p{font-size:16px}.appointment-card{gap:40px;padding:24px}.calendar{padding:12px}.calendar-days button,.calendar-empty{width:32px;height:32px}.appointment-fields .form-row{grid-template-columns:1fr}.footer-meta{text-align:left;grid-column:1;justify-self:start;margin-top:0}}@media (width<=375px){.site-header{padding:0 12px}.brand span{font-size:17px}.brand small{font-size:12px}.menu-button{width:40px;height:40px}.main-nav{left:12px;right:12px}.hero,.services,.about-main,.contact-main,.appointment-main{width:calc(100% - 24px)}.hero h1,.about-copy h1,.contact-heading h1,.appointment-heading h1{font-size:34px}.hero-image-wrap{height:118vw}.service-card,.approach-grid article,.direct-contact,.social-contact,.contact-form-card{padding:22px}.quote-section,.about-quote{padding-left:18px;padding-right:18px}.quote-section blockquote{font-size:24px}.contact-form-card form,.appointment-fields{gap:18px}.appointment-card{gap:32px;padding:18px}.calendar{padding:10px}.calendar-days button,.calendar-empty{width:28px;height:28px;font-size:13px}.time-grid{gap:8px}.time-grid button{min-height:48px;font-size:15px}.radio-group{gap:16px}.site-footer{padding-left:18px;padding-right:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
