:root{--paper:#faf7f2;--white:#fffdf9;--ink:#403830;--muted:#6d625a;--accent:#8b523f;--accent-hover:#784632;--sand:#efe7dd;--line:#d9cdbf;--dark:#34372f;--focus:#315f68;--radius:10px;color-scheme:light;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:hover{color:var(--accent)}button,input,select,textarea{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer}svg{width:22px;height:22px;flex-shrink:0}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}p+p{margin-top:1em}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,5.8vw,5.75rem)}h2{font-size:clamp(2rem,3.6vw,3.5rem)}h3{font-size:1.8rem}h1 em,h2 em{font-weight:400;color:var(--accent)}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--focus);outline-offset:5px}a,button{transition:background-color .18s,color .18s}::selection{background:#e6c9b8;color:var(--ink)}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:var(--accent);line-height:1.6}.lead{font-size:1.08rem;line-height:1.8;color:var(--muted);max-width:620px}.small,small{font-size:.8rem;line-height:1.6;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-100px;background:var(--white);padding:12px 24px;z-index:100}.skip-link:focus{top:12px}.demo-strip{background:var(--sand);text-align:center;padding:5px 18px;font-size:.68rem;color:#62574b;letter-spacing:.05em}.demo-strip span{margin-inline:10px}.site-header{position:sticky;top:0;background:var(--paper);z-index:30;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:99px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.monogram{width:49px;height:49px}.wordmark{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.wordmark>span{font-family:Georgia,serif;font-size:33px;letter-spacing:-.05em}.wordmark small{font-size:9px;letter-spacing:.26em;text-transform:uppercase;margin-top:7px;color:inherit}.desktop-nav{display:flex;gap:26px;align-items:center}.desktop-nav a{font-size:.81rem;text-decoration:none;padding-block:14px;position:relative}.desktop-nav a[aria-current=page]{color:var(--accent)}.desktop-nav a[aria-current=page]:after{content:"";height:1px;background:var(--accent);position:absolute;bottom:7px;left:0;right:0}.header-location{font-size:.68rem;letter-spacing:.04em;color:var(--muted)}.menu-toggle{display:none;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:transparent;padding:13px}.menu-toggle span{height:1px;background:var(--ink);display:block;margin:5px 0}.mobile-menu{margin:0 0 0 auto;inset:0 0 0 auto;max-height:100dvh;height:100dvh;width:min(380px,88%);max-width:88%;background:var(--paper);color:var(--ink);border:0;padding:28px;overscroll-behavior:contain}.mobile-menu::backdrop{background:rgb(42 35 30 / .48)}.menu-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.menu-top p{font-family:Georgia,serif;font-size:30px}.menu-top small{display:block;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.2em}.icon-button{width:48px;height:48px;font-size:32px;background:transparent;border:1px solid var(--line);border-radius:50%;line-height:1}.mobile-menu nav{display:flex;flex-direction:column;gap:5px}.mobile-menu nav a{font-family:Georgia,serif;font-size:27px;text-decoration:none;padding:10px 0}.mobile-menu nav a[aria-current]{color:var(--accent);text-decoration:underline}.menu-note{margin-top:32px;color:var(--muted);font-size:14px}.scroll-locked{overflow:hidden}.page-intro{padding-block:72px 60px;text-align:center}.page-intro .eyebrow{margin-bottom:22px}.page-intro .lead{margin:24px auto 0}.home-hero .page-intro{padding-block:62px 50px}.hero-buttons{display:flex;justify-content:center;gap:14px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;background:var(--accent);border:1px solid var(--accent);color:#fffdf9;padding:13px 23px;border-radius:var(--radius);text-decoration:none;font-size:.82rem;font-weight:500;line-height:1.45}.button:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:white}.button.secondary{background:transparent;color:var(--ink);border-color:#a88f7d}.button.secondary:hover{background:var(--sand);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:.85rem;font-weight:500;min-height:44px;text-decoration:none;border-bottom:1px solid var(--line);padding:6px 0}.comparison{min-width:0}.compare-stage{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:4/4.5;background:var(--sand);touch-action:pan-y}.compare-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.compare-stage .before{clip-path:inset(0 calc(100% - var(--split)) 0 0);z-index:1}.compare-stage .image-before{object-position:58% 50%}.compare-stage .image-after{object-position:50% 52%}.compare-stage .image-classic{object-position:50% 40%}.compare-tags{position:absolute;z-index:2;display:flex;justify-content:space-between;inset:22px 22px auto;pointer-events:none}.compare-tags>span{background:var(--white);color:var(--ink);border-radius:5px;padding:5px 12px;font-size:.78rem;box-shadow:0 2px 12px #0001}.compare-tags small{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;margin-left:7px}.compare-line{position:absolute;z-index:2;left:var(--split);top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 3px #0005}.compare-line span{display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:var(--white);color:var(--ink);font-family:Arial,sans-serif;font-size:25px;box-shadow:0 3px 20px #0002}.compare-range{position:absolute;inset:0;z-index:3;margin:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:pan-y}.compare-stage:focus-within{outline:4px solid var(--focus);outline-offset:4px}.compare-stage:focus-within .compare-line span{outline:3px solid var(--focus);outline-offset:4px}.comparison figcaption{padding:20px 0;display:flex;flex-direction:column;gap:10px}.instruction{font-size:.8rem;margin-top:5px!important}.demo-caption{font-size:.7rem;color:var(--muted);line-height:1.6;max-width:520px}.hero-comparison .compare-stage{aspect-ratio:auto;height:clamp(420px,43vw,620px)}.hero-comparison figcaption{width:min(1200px,calc(100% - 96px));margin:auto;flex-direction:row;justify-content:space-between;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.hero-comparison .compare-tags{left:48px;right:48px;top:26px}.hero-comparison .demo-caption{max-width:420px}.intro-note{display:grid;grid-template-columns:1fr 2fr;gap:22px 90px;padding-block:96px}.intro-note>.eyebrow{grid-column:1/-1}.intro-note h2{font-size:clamp(2rem,3vw,2.8rem);min-width:370px}.intro-note>p{max-width:510px;justify-self:end;color:var(--muted)}.warm{background:var(--sand)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:18px}.service-teasers{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cabbab;border-bottom:1px solid #cabbab}.service-teaser{padding:30px 28px 26px;text-decoration:none;position:relative;border-right:1px solid #cabbab}.service-teaser:first-child{padding-left:0}.service-teaser:last-child{border-right:0}.service-number{font-size:.8rem;color:var(--accent);font-family:Georgia,serif;font-style:italic}.service-teaser h3{margin:28px 0 10px}.service-teaser p{font-size:.88rem;color:var(--muted)}.service-teaser>svg{margin-top:28px}.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 36px}.blog-card .image-link{display:block;position:relative;overflow:hidden;border-radius:var(--radius);margin-bottom:23px}.blog-card img{height:330px;object-fit:cover;object-position:50% 38%}.photo-badge{position:absolute;bottom:12px;left:12px;font-size:.65rem;padding:3px 9px;border-radius:4px;background:var(--white);color:var(--ink)}.blog-card .eyebrow{font-size:.63rem;letter-spacing:.1em}.blog-card .eyebrow span{color:var(--muted);font-weight:400}.blog-card h3{margin:12px 0 15px;font-size:1.85rem;line-height:1.25}.blog-card h3 a{text-decoration:none}.blog-card>p:not(.eyebrow){font-size:.92rem;color:var(--muted)}.blog-card .text-link{margin-top:18px}.cta{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:50px 56px;margin-bottom:90px;background:#f0e2d6;border-radius:14px}.cta .eyebrow{margin-bottom:12px}.cta h2{font-size:clamp(2rem,3.3vw,3.2rem)}.cta p:not(.eyebrow){margin-top:16px;color:var(--muted);font-size:.92rem}.cta .button{flex-shrink:0}footer{background:var(--dark);color:#f6f0e7;padding:65px 0 110px}footer .brand{color:#f6f0e7}footer .monogram{--accent:#d7ad90}footer p{font-size:.8rem;line-height:1.9;margin-top:23px;color:#d8d4c8}footer small{color:#d8d4c8}footer h2{font-family:Arial,sans-serif;font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#e3c0a7;line-height:1.7}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.25fr;gap:70px}.footer-grid nav{display:flex;flex-direction:column;align-items:flex-start;margin-top:15px}.footer-grid nav a{font-size:.8rem;text-decoration:none;min-height:34px;padding:4px 0}.footer-grid a:hover{color:#e3c0a7}.socials{display:flex;gap:9px;margin-top:23px}.socials a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #6c6e64;border-radius:50%}.socials svg{width:19px;height:19px}.contact-lines{display:flex;flex-direction:column;gap:6px}.contact-lines a{overflow-wrap:anywhere}.footer-bottom{margin-top:50px;border-top:1px solid #626459;padding-top:23px;display:flex;justify-content:space-between;gap:18px;font-size:.68rem;color:#d8d4c8}.footer-bottom>div{display:flex;gap:22px}.plain-button{border:0;background:transparent;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;font-size:inherit;min-height:44px}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}.floating-actions{position:fixed;right:24px;bottom:max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:10px;z-index:25}.floating-actions a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:49px;border-radius:30px;padding:12px 19px;text-decoration:none;font-size:.75rem;box-shadow:0 4px 20px #30281b26;border:1px solid #a98b76}.float-book{background:var(--paper);color:var(--ink)}.float-chat{background:#52664e;color:white!important;border-color:#52664e!important}.floating-actions a:hover{transform:translateY(-2px)}.cookie-banner{position:fixed;left:22px;bottom:22px;width:min(520px,calc(100% - 44px));max-height:65dvh;overflow:auto;background:var(--white);padding:22px;border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 35px #30281b26;z-index:40;font-size:.8rem}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-weight:600}.cookie-banner p{margin-top:6px;color:var(--muted);font-size:.76rem}.cookie-actions{display:flex;gap:10px;margin-top:15px}.cookie-actions .button{font-size:.71rem;padding:10px 13px;flex:1;min-height:46px}.cookie-status:empty{display:none}.notice{border-left:3px solid var(--accent);padding:16px 20px;background:var(--sand);font-size:.88rem;line-height:1.8;border-radius:0 8px 8px 0}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 32px;padding-block:45px 75px}.portfolio-grid .compare-stage{border-radius:10px}.portfolio-grid .eyebrow{font-size:.86rem;letter-spacing:.07em}.service-list{padding-bottom:50px}.service-row{display:grid;grid-template-columns:60px 1.4fr 1fr;gap:35px;padding:48px 0;border-top:1px solid var(--line);scroll-margin-top:130px}.service-row h2{font-size:2.5rem;margin:12px 0 20px}.service-row p{font-size:.92rem;max-width:520px;color:var(--muted)}.service-row .eyebrow{font-size:.68rem;color:var(--accent)}.service-row ul{padding-left:20px;margin:23px 0;color:var(--muted);font-size:.86rem}.service-row li{margin-bottom:10px}.faq{max-width:800px;padding-block:35px 90px}.faq h2{margin:15px 0 28px}details{border-bottom:1px solid var(--line);padding:15px 0}summary{cursor:pointer;min-height:44px;align-content:center;font-size:1rem}details p{font-size:.92rem;padding-block:10px 20px;color:var(--muted)}.booking-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:85px;align-items:start;padding-bottom:95px}.booking-process h2{margin:16px 0 32px}.booking-process ol{counter-reset:step;list-style:none;padding:0}.booking-process li{counter-increment:step;position:relative;padding:0 0 30px 52px;border-left:1px solid var(--line);margin-left:16px}.booking-process li:last-child{border:0}.booking-process li:before{content:'0' counter(step);position:absolute;left:-17px;top:0;background:var(--paper);border:1px solid var(--line);width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:.75rem;color:var(--accent)}.booking-process li strong{font-weight:500;font-size:.95rem}.booking-process li p{font-size:.84rem;color:var(--muted);margin-top:6px}.form-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:35px}.form-card h2{font-size:2.1rem;margin:10px 0 23px}.form-card .notice{font-size:.8rem;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.form-grid>div{min-width:0}.full{grid-column:1/-1}fieldset{padding:0;margin:0;border:0;min-width:0}label{display:block;font-size:.8rem;margin-bottom:7px}label span{font-size:.65rem;color:var(--muted)}input:not([type=range]),select,textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:49px;padding:11px 12px;background:var(--white);border:1px solid #a69381;border-radius:7px;color:var(--ink);font-size:16px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#786b60;opacity:1}input:user-invalid,select:user-invalid{border:2px solid #a02d30}.form-card .button{margin-top:25px;width:100%}.form-result:not(:empty){background:#e8eee2;padding:20px;border-radius:8px;margin-top:20px;color:#33462c;font-size:.9rem}.blog-list{padding-top:10px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:95px}.contact-card{background:var(--white);border:1px solid var(--line);padding:38px;border-radius:14px;scroll-margin-top:130px}.contact-card.soft{background:var(--sand)}.contact-card h2{font-size:2.3rem;margin:15px 0 25px}.contact-card h3{font-size:1.7rem;margin-top:36px}.contact-card p{font-size:.9rem;color:var(--muted)}.contact-card dt{font-size:.72rem;color:var(--muted);margin-top:20px}.contact-card dd{margin:0;font-size:1.15rem;overflow-wrap:anywhere}.contact-card .button{margin-top:24px}.breadcrumb{padding-top:30px;display:flex;gap:15px;font-size:.72rem;color:var(--muted)}.breadcrumb+.page-intro{max-width:1050px;padding-top:42px}.breadcrumb+.page-intro h1{font-size:clamp(2.3rem,4.5vw,4.4rem)}.article-meta{font-size:.73rem;text-align:center;margin-top:-25px;color:var(--muted)}.article-meta span{margin:0 10px}.article-cover{margin-top:35px;max-width:960px}.article-cover img{height:420px;object-fit:cover;object-position:50% 38%;border-radius:12px}.article-cover figcaption{font-size:.7rem;color:var(--muted);padding:12px 0}.prose{max-width:720px;padding-block:40px 75px;overflow-wrap:break-word}.prose h2{font-size:2rem;margin:42px 0 20px}.prose p{font-size:1rem;line-height:1.95}.prose a{color:var(--accent)}.prose ol{padding-left:24px}.prose li{padding-left:8px;margin:12px 0}.prose .article-lead{font-size:1.23rem;line-height:1.8;color:var(--ink);font-family:Georgia,serif}.article-note{background:var(--sand);padding:25px 30px;border-radius:10px;margin-top:35px;font-size:.9rem}.article-next{max-width:900px;border-top:1px solid var(--line);padding-block:40px 75px}.article-next h2{margin:12px 0 25px}.article-next>div{display:flex;flex-direction:column;gap:14px;align-items:flex-start}.noscript-note{padding:15px;text-align:center;background:var(--sand);font-size:.8rem}body:has(.noscript-note) .desktop-nav{display:flex;flex-wrap:wrap}body:has(.noscript-note) .header-inner{flex-wrap:wrap}body:has(.noscript-note) .menu-toggle{display:none}@media(min-width:1600px){.hero-comparison .compare-stage{height:720px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-location{display:none}.desktop-nav{gap:22px}.header-inner{gap:20px}.hero-comparison figcaption{width:calc(100% - 64px)}.intro-note{gap:20px 35px}.intro-note h2{min-width:300px}.booking-layout{gap:35px}.form-card{padding:25px}.cta{padding:40px 34px}.footer-grid{gap:35px}}@media(max-width:759px){html{scroll-padding-top:100px}.wrap{width:calc(100% - 40px)}.demo-strip{font-size:.59rem;padding:5px 10px;letter-spacing:0}.demo-strip span{margin-inline:5px}.header-inner{min-height:80px}.monogram{width:44px;height:44px}.wordmark>span{font-size:29px}.wordmark small{font-size:8px}.brand{gap:9px}.desktop-nav{display:none}.menu-toggle{display:block}.page-intro{padding-block:47px 38px}.page-intro .eyebrow{font-size:.6rem;letter-spacing:.13em;margin-bottom:19px}.page-intro .lead{font-size:.95rem;margin-top:21px;max-width:430px}.home-hero .page-intro{padding-block:43px 36px}h1{font-size:clamp(2.6rem,9.7vw,4.3rem);line-height:1.13}h2{font-size:2.3rem}.hero-buttons{gap:10px;margin-top:25px;flex-wrap:wrap}.button{font-size:.76rem;padding:12px 16px;min-height:49px}.hero-buttons .button{flex-grow:1;max-width:330px}.hero-comparison .compare-stage{height:440px}.hero-comparison .compare-tags{inset:18px 20px auto}.compare-stage .image-before{object-position:57% 50%}.compare-stage .image-classic{object-position:50% 40%}.hero-comparison figcaption{width:calc(100% - 40px);flex-direction:column;align-items:flex-start;gap:10px;padding:18px 0 22px}.hero-comparison .eyebrow{font-size:.61rem;letter-spacing:.1em}.instruction{font-size:.72rem}.demo-caption{font-size:.67rem}.compare-line span{width:52px;height:52px}.intro-note{display:block;padding-block:55px}.intro-note h2{font-size:2.1rem;min-width:0;margin:20px 0}.intro-note>p{font-size:.92rem}.section{padding-block:55px}.section-heading{display:block;margin-bottom:30px}.section-heading .text-link{margin-top:22px}.section-heading .eyebrow{margin-bottom:15px}.service-teasers{grid-template-columns:1fr}.service-teaser{padding:23px 0!important;border-right:0;border-bottom:1px solid #cabbab;display:grid;grid-template-columns:30px 1fr 24px;gap:8px 13px;align-items:center}.service-teaser:last-child{border-bottom:0}.service-teaser h3{margin:0;font-size:1.75rem}.service-teaser p{grid-column:2;grid-row:2;font-size:.8rem}.service-teaser>svg{grid-column:3;grid-row:1/3;margin:0}.blog-grid{grid-template-columns:1fr;gap:42px}.blog-card img{height:280px}.blog-card h3{font-size:1.65rem}.blog-card .image-link{margin-bottom:18px}.cta{display:block;padding:32px 25px;margin-bottom:55px;border-radius:12px}.cta h2{font-size:2.2rem}.cta .button{margin-top:25px}.cta .eyebrow{font-size:.62rem}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 22px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{min-width:0}.footer-grid h2{font-size:.65rem}.footer-grid p,.footer-grid nav a{font-size:.75rem}.footer-grid small{font-size:.66rem}.footer-grid nav a{min-height:44px}.footer-bottom{flex-direction:column;margin-top:35px}.footer-bottom>div{flex-wrap:wrap;gap:0 20px}.footer-bottom span{line-height:1.6}footer{padding-top:45px;padding-bottom:150px}.floating-actions{right:15px;bottom:max(18px,env(safe-area-inset-bottom));gap:10px}.floating-actions a{width:50px;height:50px;padding:12px;border-radius:50%}.floating-actions span{display:none}.cookie-banner{left:12px;bottom:12px;width:calc(100% - 24px);padding:18px;max-height:60dvh}.cookie-actions{gap:8px}.cookie-actions .button{font-size:.7rem;padding:10px}.cookie-banner strong{font-size:.77rem}.cookie-banner p{font-size:.72rem}.service-row{grid-template-columns:30px 1fr;gap:15px;padding:32px 0}.service-row>div:last-child{grid-column:2}.service-row h2{font-size:2.1rem}.service-row ul{margin-top:0}.service-row .eyebrow{font-size:.6rem}.service-row p{font-size:.87rem}.faq{padding-block:10px 55px}.faq h2{font-size:2rem}summary{font-size:.92rem}.portfolio-grid{grid-template-columns:1fr;gap:22px;padding-block:30px 45px}.portfolio-grid .compare-stage{aspect-ratio:4/4.6}.portfolio-grid .comparison figcaption{gap:7px}.portfolio-grid .eyebrow{font-size:.72rem}.notice{font-size:.8rem;padding:14px 16px}.booking-layout{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.booking-process h2{font-size:2.2rem}.booking-process ol{display:grid;grid-template-columns:1fr 1fr;gap:20px 15px}.booking-process li{border:0;padding:42px 0 0;margin:0}.booking-process li:before{left:0}.booking-process li strong{font-size:.82rem}.booking-process li p{font-size:.76rem}.form-card{padding:22px 18px}.form-card h2{font-size:1.9rem}.form-grid{grid-template-columns:1fr;gap:18px}.full{grid-column:auto}.form-card label{font-size:.82rem}.contact-grid{grid-template-columns:1fr;gap:22px;padding-bottom:55px}.contact-card{padding:28px 22px}.contact-card h2{font-size:2rem}.contact-card dd{font-size:1rem}.article-meta{margin-top:-13px;font-size:.66rem}.article-cover{margin-top:25px}.article-cover img{height:290px}.article-cover figcaption{font-size:.62rem}.prose{padding-block:25px 45px}.prose p{font-size:.95rem;line-height:1.9}.prose h2{font-size:1.75rem;margin-top:34px}.prose .article-lead{font-size:1.15rem}.article-note{padding:20px}.article-next{padding-block:30px 50px}.article-next h2{font-size:2rem}.breadcrumb{padding-top:20px}.breadcrumb+.page-intro{padding-top:30px}.blog-list{padding-top:0}.compare-tags{inset:17px 17px auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.floating-actions a:hover{transform:none}}@media print{.site-header,.demo-strip,.floating-actions,.cookie-banner,.mobile-menu,footer,.hero-buttons,.cta,.compare-range,.compare-line,.menu-toggle{display:none!important}body{background:white;color:black}.wrap{width:100%;max-width:none}.page-intro{padding:20px 0}.prose{padding:0}.prose h2{break-after:avoid}a{color:black!important}.compare-stage .before{clip-path:inset(0 50% 0 0)}}

@media(max-width:759px){html:not(.js) .desktop-nav{display:flex;flex-wrap:wrap;gap:4px 20px}html:not(.js) .header-inner{flex-wrap:wrap;padding-block:16px}html:not(.js) .menu-toggle{display:none}html:not(.js) .desktop-nav a{min-height:44px}}
/* Revision 2: calligraphic mark and a calendar-first booking flow. */
.brand .monogram{width:55px;height:55px}.wordmark>span{font-style:italic;font-size:37px}.wordmark small{margin-left:3px}.booking-dialog{width:min(950px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--ink);padding:30px;overscroll-behavior:contain;box-shadow:0 20px 80px #30281b33}.booking-dialog::backdrop{background:rgb(42 35 30 / .5)}.booking-dialog-top{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;margin-bottom:18px}.booking-dialog-top h2{font-size:2.2rem;margin-top:8px;line-height:1.2}.booking-close{flex-shrink:0}.booking-demo{padding:10px 14px;margin-bottom:20px!important;background:var(--sand);border-radius:8px;font-size:.73rem;line-height:1.7;color:var(--muted)}.appointment-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:30px}.appointment-calendar{background:var(--paper);border:1px solid var(--line);padding:18px;border-radius:12px;align-self:start;min-width:0}.step-label{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--ink);margin-bottom:20px!important}.step-label span{font:italic 1.1rem Georgia,serif;color:var(--accent)}.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.calendar-head button{width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);font-size:25px;line-height:1}.calendar-head button:disabled{opacity:.4;cursor:default}.calendar-month{font-family:Arial,sans-serif;font-weight:500;font-size:.9rem;letter-spacing:0;text-align:center}.calendar-month:first-letter{text-transform:uppercase}.calendar{width:100%;border-collapse:collapse;table-layout:fixed}.calendar th{font-size:.66rem;font-weight:400;color:var(--muted);height:32px}.calendar abbr{text-decoration:none}.calendar td{padding:2px 0;text-align:center}.calendar td button{display:block;margin:auto;width:100%;max-width:45px;min-height:44px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--ink);font-size:.8rem}.calendar td button:hover:not(:disabled){background:var(--sand)}.calendar td button[aria-current=date]{border-color:#a18b78}.calendar td button[aria-pressed=true]{background:var(--accent);color:white;border-color:var(--accent)}.calendar td button[aria-pressed=true]:hover{background:var(--accent-hover)}.calendar td button:disabled{color:#8b8177;opacity:.5;cursor:default}.calendar td button:focus-visible{outline-offset:0}.calendar-selected{font-size:.77rem;margin-top:18px!important;padding-top:15px;border-top:1px solid var(--line);font-weight:500}.calendar-help{font-size:.67rem;line-height:1.65;color:var(--muted);margin-top:9px!important}.date-fallback-label{font-size:.68rem;margin-top:16px}.appointment-calendar input[type=date]{min-height:42px;font-size:.83rem;background:var(--white)}.appointment-details{min-width:0}.appointment-details>label:not(:first-child){margin-top:16px}.appointment-details .step-label+label{margin-top:0}.appointment-details textarea{min-height:95px}.contact-fields-label{font-size:.74rem;margin:19px 0 10px!important;color:var(--muted)}.appointment-contact{display:grid;grid-template-columns:1fr 1fr;gap:14px}.appointment-contact>div{min-width:0}.appointment-contact label span{display:block;font-size:.6rem}.appointment-submit{width:100%;margin-top:24px;min-height:52px}.appointment-footnote{font-size:.66rem;text-align:center;color:var(--muted);margin-top:10px!important}.appointment-result:not(:empty){margin-top:22px;padding:20px;border-radius:10px;background:#e8eee2;color:#33462c;font-size:.86rem}.booking-page{max-width:1000px;background:var(--white);padding:32px;border:1px solid var(--line);border-radius:18px;margin-bottom:45px}.booking-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-bottom:80px;max-width:1000px}.booking-steps span{font:italic 1rem Georgia,serif;color:var(--accent)}.booking-steps h2{font-size:1.5rem;margin:12px 0}.booking-steps p{font-size:.81rem;color:var(--muted)}.portfolio-preview{padding-block:85px}.portfolio-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.portfolio-preview .compare-stage{aspect-ratio:4/4.8;border-radius:10px}.portfolio-preview .compare-tags{inset:12px 12px auto}.portfolio-preview .compare-tags span{font-size:.66rem;padding:4px 8px}.portfolio-preview .compare-tags small{display:none}.portfolio-preview .eyebrow{font-size:.69rem;letter-spacing:.08em}.portfolio-preview .demo-caption{font-size:.65rem}.portfolio-preview .instruction{font-size:.7rem}.compare-stage .image-ai{object-position:50% 44%}.hero-comparison .image-ai{object-position:50% 44%}.generated-note{max-width:620px;font-size:.82rem;color:var(--muted);margin-top:20px!important}.ai-badge{position:absolute;bottom:16px;left:20px;z-index:2;pointer-events:none;background:var(--white);padding:5px 10px;border-radius:5px;font-size:.65rem;color:var(--ink)}
@media(max-width:759px){.brand .monogram{width:49px;height:49px}.wordmark>span{font-size:32px}.booking-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:20px 16px;border-radius:16px}.booking-dialog-top{gap:10px}.booking-dialog-top h2{font-size:1.7rem}.booking-dialog-top .eyebrow{font-size:.6rem}.booking-close{width:44px;height:44px}.booking-demo{font-size:.68rem;padding:10px 12px}.appointment-layout{grid-template-columns:1fr;gap:26px}.appointment-calendar{padding:15px 10px}.calendar-month{font-size:.94rem}.calendar td button{max-width:48px;min-height:46px;font-size:.88rem}.calendar-selected{font-size:.79rem}.appointment-contact{gap:12px}.appointment-contact label{font-size:.76rem}.appointment-contact input{font-size:16px;padding:10px}.appointment-details .step-label{margin-bottom:15px!important}.appointment-details textarea{min-height:88px}.appointment-footnote{font-size:.67rem}.booking-page{padding:18px 12px;width:calc(100% - 24px);margin-bottom:30px}.booking-steps{grid-template-columns:1fr;gap:22px;padding-bottom:55px}.booking-steps>div{display:grid;grid-template-columns:25px 1fr;gap:4px 13px}.booking-steps h2{margin:0;font-size:1.5rem}.booking-steps p{grid-column:2;font-size:.8rem}.portfolio-preview{padding-block:55px}.portfolio-preview-grid{grid-template-columns:1fr;gap:20px}.portfolio-preview .compare-stage{aspect-ratio:4/4.5}.ai-badge{bottom:13px;left:16px;font-size:.6rem}.hero-comparison .image-ai{object-position:50% 44%}.hero-comparison .compare-stage{height:440px}.appointment-calendar input[type=date]{font-size:16px}.appointment-details label span{font-size:.63rem}}
@media(max-width:350px){.appointment-contact{grid-template-columns:1fr}.appointment-contact label span{display:inline}.booking-dialog{padding-inline:10px}.appointment-calendar{padding-inline:4px}.calendar td button{min-height:44px}.booking-dialog-top h2{font-size:1.55rem}.booking-page{padding-inline:8px}}
@media(max-width:759px){.booking-dialog-top{position:sticky;top:-20px;z-index:6;background:var(--white);padding-top:8px;padding-bottom:12px;border-bottom:1px solid var(--line)}.booking-dialog-top h2{font-size:1.55rem}.booking-dialog .appointment-details{scroll-margin-top:125px}}
