@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--cream:#fbf5ee;--rose:#f0d4cd;--terra:#a3524c;--ink:#301d19;--muted:#705b54;--line:#d9bcb2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none;cursor:pointer}a:focus-visible{outline:3px solid var(--terra);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3,.brand{font-family:'Playfair Display',Georgia,serif;font-weight:400}em{font-weight:400;color:var(--terra)}.preview{text-align:center;background:var(--ink);color:var(--cream);font-size:10px;letter-spacing:1.8px;padding:9px 16px}.preview span{letter-spacing:.5px;opacity:.85}header{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 6%;gap:25px}.brand{font-size:35px;line-height:1}.brand small{display:block;text-align:center;font:9px 'DM Sans',sans-serif;letter-spacing:5px;margin-top:12px}nav{display:flex;gap:32px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:17px 24px;background:var(--terra);color:white;border-radius:3px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#843e39;transform:translateY(-2px)}.compact{padding:13px 19px;font-size:12px}.hero{max-width:1400px;margin:18px auto 64px;display:grid;grid-template-columns:1.05fr 1fr;padding:0 6%;align-items:center;gap:40px}.eyebrow{font-size:10px;letter-spacing:2.8px;font-weight:700}.hero h1{font-size:clamp(42px,4.6vw,70px);line-height:1.12;letter-spacing:-2px;margin:25px 0}.intro{color:var(--muted);max-width:310px;margin-bottom:30px;font-size:16px}.location{font-size:11px;margin-top:28px;color:var(--muted)}.location span{font-size:20px;margin-right:6px}.hero-image{position:relative;padding:0 14px 23px 0}.hero-image:before{content:'';position:absolute;inset:30px 0 0 35px;border:1px solid #c9867d;border-radius:45% 45% 4px 4px;z-index:-1}.hero-image img{display:block;width:100%;height:555px;object-fit:cover;border-radius:45% 45% 3px 3px;background:var(--rose)}.hero-image figcaption{font-size:8px;letter-spacing:1.4px;position:absolute;bottom:0;left:0}.image-note{position:absolute;right:-8px;bottom:65px;background:var(--cream);border-radius:50%;border:1px solid var(--line);width:132px;height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);font:22px/1.15 'Playfair Display',serif}.ribbon{background:var(--rose);border-block:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:7%;padding:19px;font:18px 'Playfair Display',serif}.ribbon span:nth-child(even){color:var(--terra);font-size:28px}.section{max-width:1400px;margin:auto;padding:90px 6%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:38px}h2{font-size:clamp(35px,3.6vw,52px);line-height:1.2;letter-spacing:-1.4px}.section-heading h2{margin-top:14px}.section-heading>p{max-width:295px;color:var(--muted);font-size:14px}.service-list{border-top:1px solid var(--line)}.service-list a{display:flex;align-items:center;border-bottom:1px solid var(--line);padding:24px 5px;gap:30px;transition:background .2s}.service-list a:hover{background:#f5e5de}.number{font-size:11px;color:var(--terra)}.service-list h3{font-size:30px;flex:1}.service-list a>span:nth-of-type(2){width:230px;color:var(--muted);font-size:12px}.service-list b{font-size:24px;color:var(--terra);font-weight:400}.fine{font-size:11px;color:var(--muted);margin-top:20px;max-width:790px}.gallery{padding-top:25px}.text-link{font-size:12px;border-bottom:1px solid var(--terra);padding-bottom:5px}.photos{display:grid;grid-template-columns:1fr .85fr 1fr;gap:24px;align-items:center}.photos img{width:100%;height:360px;object-fit:cover;background:var(--rose)}.photos figure:last-child{margin-top:60px}.photos figcaption{font-size:11px;margin-top:12px;color:var(--muted)}.quote{text-align:center;padding:24px 10px}.quote>span{font-size:42px;color:var(--terra)}.quote p{font:31px/1.3 'Playfair Display',serif;margin:22px 0}.quote small{font-size:8px;letter-spacing:1.9px}.experience{text-align:center;background:#f1ded6;max-width:none;padding:75px 20px}.experience h2{margin:20px 0}.experience>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:24px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.contact h2{margin:18px 0 25px}.contact>div>p:not(.eyebrow){color:var(--muted);margin-bottom:20px}.contact-card{border:1px solid var(--line);padding:38px;background:#fffaf5}.contact-card h3{font-size:34px;margin:15px 0}.contact-card .button,.secondary{width:100%;text-align:center}.secondary{display:block;font-size:12px;padding:15px 5px;border:1px solid var(--line);margin-top:10px}.phone{display:block;text-align:center;margin-top:23px;font-size:16px}.contact-card small{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:8px}footer{margin:0 6%;padding:35px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}footer>a:nth-child(2){font-size:12px}footer p{font-size:10px;color:var(--muted);text-align:right}@media(min-width:1500px){.hero-image img{height:640px}}@media(max-width:800px){header{padding:24px 6%}nav{display:none}.hero{gap:22px}.hero h1{font-size:45px}.hero-image img{height:470px}.compact{font-size:10px;padding:12px}.contact{gap:35px}.photos{gap:14px}.photos img{height:270px}.quote p{font-size:24px}.ribbon{gap:4%;font-size:15px}.section{padding:65px 6%}.gallery{padding-top:10px}}@media(max-width:560px){.preview{font-size:8px;letter-spacing:1px}.preview span{display:none}header{gap:12px}.brand{font-size:29px}.brand small{font-size:8px;letter-spacing:3px}.compact{max-width:165px;gap:10px;line-height:1.3}.hero{grid-template-columns:1fr;margin-top:8px;margin-bottom:35px;gap:32px}.hero h1{font-size:49px;letter-spacing:-1.8px;margin:18px 0}.hero .eyebrow{font-size:9px}.intro{font-size:14px;margin-bottom:22px}.location{margin-top:18px}.hero-image img{height:420px}.hero-image{margin:0 10px}.image-note{width:110px;height:110px;font-size:20px;bottom:50px}.ribbon{gap:15px;font-size:15px;padding:16px 20px}.ribbon span:last-child,.ribbon span:nth-child(4){display:none}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px}.section-heading>.text-link{display:inline-block;margin-top:20px}.service-list a{gap:15px;padding:23px 0}.service-list h3{font-size:25px}.service-list a>span:nth-of-type(2){display:none}.photos{grid-template-columns:1fr 1fr;gap:14px}.photos img{height:270px}.photos figure:last-child{margin-top:35px}.quote{grid-row:2;grid-column:1/-1;padding:15px 0}.quote p{font-size:32px;margin:10px 0}.quote>span{font-size:28px}.quote p br{display:none}.contact{grid-template-columns:1fr;gap:35px}.contact-card{padding:28px 22px}.experience{padding:60px 6%}footer{flex-wrap:wrap}footer p{text-align:left;width:100%;margin-top:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Refined editorial composition */
.skip-link{position:fixed;left:20px;top:-80px;z-index:20;padding:12px 20px;background:var(--ink);color:white}.skip-link:focus{top:12px}.mobile-booking{display:none}body{background:#fbf5ee}.preview{background:#efd9d1;color:#573c34;font-size:9px;letter-spacing:2px}header{padding-top:26px;padding-bottom:26px;border-bottom:1px solid #e7d8cf;max-width:1280px}.brand{font-size:38px;letter-spacing:-2px}.brand small{letter-spacing:4px}.button{border-radius:40px;padding:17px 27px;box-shadow:0 5px 16px #a3524c10}.compact{padding:13px 22px}.hero{max-width:1280px;grid-template-columns:.95fr 1.05fr;gap:65px;margin-top:45px;margin-bottom:65px}.hero-copy{padding-bottom:20px}.hero h1{font-size:clamp(60px,6.2vw,86px);line-height:1.04;letter-spacing:-3px;margin:25px 0 28px}.hero .intro{max-width:330px;font-size:15px;line-height:1.9}.hero-image{padding:0 0 30px 25px;margin-bottom:15px}.hero-image:before{inset:20px -14px 14px 46px;border-radius:180px 180px 12px 12px}.hero-image>img:first-child{height:570px;border-radius:180px 180px 12px 12px;object-position:53% center}.hero-image .inset-photo{position:absolute;left:-25px;bottom:55px;width:150px;height:190px;border:7px solid var(--cream);border-radius:75px 75px 8px 8px;transform:rotate(-9deg);box-shadow:0 14px 35px #301d1920;object-fit:cover}.hero-image figcaption{left:145px;bottom:0;font-size:8px;letter-spacing:1px}.image-note{right:-18px;bottom:72px;width:115px;height:115px;font-size:21px;box-shadow:0 8px 25px #301d1908}.ribbon{background:#efd8d0;border:0;padding:24px;gap:8%;font-style:italic}.section{max-width:1280px;padding-top:100px;padding-bottom:100px}.eyebrow{color:#80534a;letter-spacing:2.5px}.section-heading{margin-bottom:42px}.section-heading>p{line-height:1.9}.service-list{display:grid;grid-template-columns:repeat(3,1fr);border:0;gap:22px}.service-list a{position:relative;display:flex;flex-direction:column;align-items:start;gap:15px;min-height:240px;border:1px solid #d9bcb2;padding:28px;border-radius:70px 5px 5px 5px;background:#f7eae4}.service-list a:nth-child(2){background:#f0d4cd}.service-list a:nth-child(3){background:#eee4d9}.service-list h3{font-size:30px;flex:0;margin-top:15px}.service-list a>span:nth-of-type(2){width:auto;display:block}.service-list b{position:absolute;right:24px;bottom:25px;border:1px solid #c99a8b;width:39px;height:39px;text-align:center;border-radius:50%;line-height:35px}.service-list a:hover{transform:translateY(-4px);background:#f4dcd3}.service-list a{transition:transform .2s,background .2s}.fine{font-size:11px;line-height:1.8}.gallery{padding-top:10px}.photos{gap:35px;grid-template-columns:1fr .78fr 1fr}.photos img{height:405px;border-radius:100px 100px 5px 5px}.photos figure:last-child img{border-radius:5px 5px 100px 100px}.photos figure:last-child{margin-top:85px}.photos figcaption{padding-top:6px}.quote p{font-size:32px}.experience{max-width:none;position:relative;overflow:hidden;padding:85px 20px;background:#efd9d1}.experience:before,.experience:after{content:'';position:absolute;width:260px;height:390px;border:1px solid #c99689;border-radius:50%;transform:rotate(35deg);opacity:.55;pointer-events:none}.experience:before{left:-140px;top:10px}.experience:after{right:-140px;bottom:0}.experience h2{font-size:clamp(40px,4.2vw,60px)}.experience>p:not(.eyebrow){line-height:1.9}.contact-card{border-radius:100px 100px 8px 8px;padding:52px 38px 36px;text-align:center;background:#f5e7e0}.contact-card h3{font-size:36px}.contact-card .secondary{border-radius:40px}.contact{gap:110px}.contact>div:first-child{padding-left:25px}footer{max-width:1125px;margin:auto;padding:35px 0 45px}.text-link:hover{color:var(--terra)}
@media(max-width:900px){.hero{gap:25px}.hero h1{font-size:65px}.hero-image>img:first-child{height:510px}.hero-image .inset-photo{width:120px;height:160px;left:0}.hero-image figcaption{left:40px}.service-list{gap:14px}.service-list a{padding:24px 20px}.service-list h3{font-size:26px}.contact{gap:40px}footer{margin-inline:6%}.photos{gap:20px}.photos img{height:330px}.quote p{font-size:26px}}
@media(max-width:560px){header{padding:20px 6%}.brand{font-size:32px}.compact{font-size:10px;padding:12px 16px}.hero{grid-template-columns:1fr;margin-top:30px;margin-bottom:35px;gap:20px}.hero-copy{padding-bottom:0}.hero h1{font-size:64px;line-height:1.02;letter-spacing:-2px;margin:18px 0 22px}.hero .intro{font-size:14px;max-width:305px;line-height:1.8}.hero-image{margin:12px 13px 0 15px;padding-left:10px;padding-bottom:30px}.hero-image>img:first-child{height:380px;border-radius:145px 145px 8px 8px}.hero-image:before{inset:15px -10px 15px 28px;border-radius:145px 145px 8px 8px}.hero-image .inset-photo{width:112px;height:145px;left:-15px;bottom:50px;border-width:5px;border-radius:60px 60px 5px 5px}.image-note{width:90px;height:90px;font-size:18px;right:-15px;bottom:45px}.hero-image figcaption{font-size:7px;left:16px;letter-spacing:.8px}.ribbon{padding:20px 15px;gap:15px}.section{padding:65px 6%}.service-list{grid-template-columns:1fr;gap:12px}.service-list a{min-height:140px;padding:22px 26px 22px 32px;border-radius:45px 5px 5px 5px;gap:6px}.service-list h3{font-size:29px;margin-top:2px}.service-list .number{position:absolute;right:28px;top:20px}.service-list b{bottom:20px;right:23px}.service-list a>span:nth-of-type(2){font-size:12px}.gallery{padding-top:5px}.photos{gap:16px}.photos img{height:255px;border-radius:75px 75px 5px 5px}.photos figure:last-child img{border-radius:5px 5px 75px 75px}.photos figure:last-child{margin-top:38px}.photos figcaption{font-size:10px;line-height:1.7}.quote{padding:20px 5px 0}.quote p{font-size:30px;max-width:290px;margin:15px auto}.experience{padding:65px 6%}.experience h2{font-size:39px}.experience:before,.experience:after{opacity:.25}.contact{gap:35px}.contact>div:first-child{padding-left:0}.contact-card{padding:45px 24px 30px;border-radius:80px 80px 8px 8px}.contact-card h3{font-size:32px}.mobile-booking{display:flex;position:fixed;bottom:14px;left:6%;right:6%;z-index:10;box-shadow:0 8px 25px #301d1933;padding:16px;justify-content:space-between;font-size:13px}footer{padding-bottom:105px}.location{font-size:11px}.button{min-height:46px}.preview{font-size:8px}}
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:arrive .65s ease both}.hero-image{animation:arrive .85s ease both}@keyframes arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:560px){.hero h1{font-size:54px;letter-spacing:-2px}.hero h1 em{white-space:nowrap}.hero-copy{padding-top:0}}
/* Nail Spot — salon editorial direction */
:root{--cream:#fff9f3;--rose:#f2d7cf;--terra:#9b4e49;--ink:#38201d;--muted:#735b54;--line:#e6c8bc}body{background:var(--cream)}html{scroll-padding-top:110px}.preview{background:#38201d;color:#fff3e9;padding:10px 15px}header{position:sticky;top:0;z-index:15;background:#fff9f3f5;backdrop-filter:blur(15px);max-width:none;padding:20px max(6%,calc((100vw - 1120px)/2));border-bottom:1px solid #e6c8bc80}.brand{font-weight:500;font-size:36px}nav a{position:relative}nav a:after{content:'';display:block;height:1px;background:var(--terra);transform:scaleX(0);transition:transform .2s}nav a:hover:after{transform:scaleX(1)}.button{background:linear-gradient(115deg,#a95e56,#85413c);box-shadow:0 8px 22px #85413c24;font-size:12px;letter-spacing:.1px}.button.outline{color:var(--terra);background:#fff9f3;box-shadow:none;border:1px solid #c99888}.button.outline:hover{background:#f6e4db}.hero{max-width:none;position:relative;isolation:isolate;padding:65px max(6%,calc((100vw - 1120px)/2)) 80px;margin:0;gap:60px;background:radial-gradient(ellipse at 90% 12%,#efd0c6 0,transparent 55%),linear-gradient(160deg,#fffaf5,#f8e9e0);overflow:hidden}.hero:before{content:'';position:absolute;z-index:-1;width:600px;height:600px;border:1px solid #c7978650;border-radius:50%;right:-230px;top:-170px}.hero h1{font-size:clamp(66px,6.1vw,90px);line-height:1.04;letter-spacing:-3px}.hero-tag{display:inline-block;padding:9px 15px;border:1px solid #c79b8b;border-radius:50px;font-size:9px;letter-spacing:1.7px;background:#fff9f370}.hero .intro{font-size:15px;max-width:370px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions .button{padding:16px 22px}.hero-image{margin:0;padding:0 15px 28px 25px}.hero-image>img:first-child{height:540px;object-position:46% 50%;border-radius:210px 210px 22px 22px;box-shadow:0 25px 55px #85413c15}.hero-image:before{inset:20px 0 10px 45px;border-radius:210px 210px 22px 22px;background:transparent}.hero-image .inset-photo{left:-25px;bottom:45px;width:152px;height:195px;border-radius:90px 90px 14px 14px;transform:rotate(-8deg)}.image-note{right:-6px;bottom:65px;border:1px solid #c79b8b;background:#fff9f3;width:118px;height:118px}.hero-image figcaption{left:85px;font-size:7px}.location{border-top:1px solid #c79b8b60;padding-top:20px;max-width:360px;margin-top:26px;font-size:12px}.ribbon{background:#9b4e49;color:#fff6ed;font-style:normal;font:500 13px 'DM Sans',sans-serif;letter-spacing:1px;padding:25px 20px;gap:7%}.ribbon span:nth-child(even){color:#f4cebf;font-size:22px}.services{padding-bottom:80px}.section-heading h2{font-size:clamp(38px,4vw,55px)}.service-list a{border-radius:24px;background:#fffcf8;border:1px solid #e3c7bc;min-height:265px;padding:32px;box-shadow:0 12px 35px #70382a08;overflow:hidden}.service-list a:before{content:'';position:absolute;width:100px;height:100px;border:1px solid #d5ada0;border-radius:50%;right:-25px;top:-30px;opacity:.5}.service-list a:nth-child(2){background:#f2d7cf}.service-list a:nth-child(3){background:#f7e9df}.service-list .number{font-size:13px;letter-spacing:2px;border:1px solid #c99888;border-radius:50%;width:44px;height:44px;display:grid;place-items:center}.service-list h3{font-size:32px;margin-top:8px}.service-list a>span:nth-of-type(2){max-width:205px;line-height:1.8;font-size:13px}.service-list b{background:#fff9f3aa}.gallery{padding-top:25px}.photos img{box-shadow:0 14px 35px #70382a0c}.how{max-width:none;background:#f6e9e1;padding:75px max(6%,calc((100vw - 1120px)/2))}.centered{display:block;text-align:center}.centered h2{margin-top:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:center}.steps article{position:relative}.steps article:not(:last-child):after{content:'';height:1px;background:#c79b8b70;position:absolute;width:40%;left:87%;top:29px}.steps article>span{display:grid;place-items:center;margin:0 auto 20px;width:60px;height:60px;border-radius:50%;background:#9b4e49;color:#fff9f3;font:26px 'Playfair Display',serif;box-shadow:0 7px 15px #85413c19}.steps h3{font-size:28px;margin-bottom:12px}.steps p{max-width:280px;margin:auto;font-size:13px;line-height:1.9;color:var(--muted)}.experience{background:#fff9f3}.experience:before,.experience:after{width:300px;height:440px;opacity:.3}.faq{padding-top:30px}.questions{max-width:800px;margin:auto}.questions details{background:#f8ece5;border:1px solid #e7cfc4;border-radius:15px;margin-bottom:12px;padding:20px 24px}.questions summary{font-size:14px;font-weight:500;cursor:pointer;display:flex;gap:20px;align-items:center;justify-content:space-between;list-style:none;min-height:26px}.questions summary::-webkit-details-marker{display:none}.questions summary:after{content:'+';font-size:25px;font-weight:400;color:var(--terra)}.questions details[open] summary:after{content:'−'}.questions p{font-size:13px;line-height:1.9;margin-top:14px;color:var(--muted);max-width:660px}.questions summary:focus-visible{outline:2px solid var(--terra);outline-offset:5px}.contact{padding-top:20px}.contact-card{border-radius:25px;background:#f4dfd5;box-shadow:0 18px 50px #70382a0b;padding:38px}.contact-card h3{font-size:37px}.contact-card .secondary{background:#fff9f380;border-color:#c99888}.final-cta{position:relative;overflow:hidden;text-align:center;padding:78px 6%;background:#61342f;color:#fff6ed}.final-cta:after{content:'';position:absolute;pointer-events:none;width:400px;height:400px;border:1px solid #f2d7cf28;border-radius:50%;right:-200px;top:-80px}.final-cta .eyebrow{color:#efc5b6}.final-cta h2{font-size:clamp(39px,4.5vw,60px);margin:20px 0}.final-cta em{color:#f0b6a5}.final-cta>p:not(.eyebrow){font-size:14px;color:#ecd8ce;margin-bottom:25px}.final-cta .button{background:#fff2e8;color:#63332e;box-shadow:0 8px 25px #301d1925;padding:17px 30px}.final-cta small{display:block;font-size:11px;margin-top:22px;color:#ecd8ce}footer{background:#38201d;max-width:none;margin:0;padding:35px max(6%,calc((100vw - 1120px)/2));border:0;color:#fff3e9}footer p{color:#d2b9ae}footer .brand{font-size:30px}footer .brand small{color:#e9b7a5}
@media(max-width:900px){.hero{gap:35px;padding-top:45px;padding-bottom:55px}.hero h1{font-size:65px}.hero-image>img:first-child{height:500px}.hero-image .inset-photo{width:125px;height:165px;left:-10px}.image-note{width:95px;height:95px;font-size:18px}.hero-actions .button{padding:15px 19px}.steps{gap:28px}.steps article:not(:last-child):after{width:25%;left:95%}.service-list a{padding:25px}.service-list h3{font-size:28px}}
@media(max-width:560px){html{scroll-padding-top:95px}header{padding:16px 6%}.brand{font-size:31px}.compact{font-size:10px;padding:12px 15px;max-width:160px}.hero{padding:32px 6% 40px;gap:28px}.hero-tag{font-size:8px;letter-spacing:1px;padding:8px 12px}.hero h1{font-size:57px;letter-spacing:-2px;margin:22px 0}.hero .intro{font-size:14px;line-height:1.8;margin-bottom:23px}.hero-actions{gap:10px}.hero-actions .button{font-size:11px;padding:14px 18px}.hero-actions .outline{box-shadow:none}.hero-image{padding:0 17px 27px 20px;margin:0 5px}.hero-image>img:first-child{height:365px;border-radius:150px 150px 18px 18px}.hero-image:before{inset:15px 5px 13px 35px;border-radius:150px 150px 18px 18px}.hero-image .inset-photo{width:108px;height:140px;left:-3px;bottom:43px;border-radius:65px 65px 10px 10px}.hero-image figcaption{left:18px;font-size:7px;letter-spacing:.5px}.image-note{right:0;bottom:50px}.location{margin-top:22px;padding-top:17px}.ribbon{font-size:10px;letter-spacing:.3px;gap:14px;padding:20px 12px}.ribbon span:nth-child(even){font-size:18px}.section-heading h2{font-size:38px}.service-list a{min-height:174px;padding:24px}.service-list .number{position:static;width:34px;height:34px;font-size:10px}.service-list h3{font-size:29px;margin-top:6px}.service-list a>span:nth-of-type(2){max-width:240px;font-size:12px}.service-list b{bottom:25px}.steps{grid-template-columns:1fr;gap:25px;text-align:left}.steps article{padding-left:72px;min-height:105px}.steps article>span{position:absolute;left:0;top:0;width:48px;height:48px;font-size:23px}.steps h3{font-size:28px;margin-bottom:8px}.steps p{max-width:none;font-size:13px}.steps article:not(:last-child):after{width:1px;height:calc(100% - 34px);left:24px;top:59px}.how{padding:60px 6%}.centered h2{font-size:38px}.faq{padding-top:10px}.questions details{padding:17px 18px;border-radius:12px}.questions summary{font-size:13px;line-height:1.6}.contact{padding-top:10px}.contact-card{padding:30px 24px;border-radius:20px}.contact-card h3{font-size:32px}.final-cta{padding:60px 6%}.final-cta h2{font-size:37px}.final-cta>p:not(.eyebrow){font-size:13px}.final-cta h2 br{display:none}footer{padding:30px 6% 105px}.mobile-booking{z-index:16}}
/* Mobile polish: compact screens, touch targets and safe areas */
@media(max-width:560px){
 body{padding-bottom:0}
 header{gap:12px;padding:14px 5%}
 .brand{font-size:29px;flex-shrink:0}
 .brand small{font-size:8px;letter-spacing:3px;margin-top:9px}
 header .compact{font-size:10px;line-height:1.45;max-width:157px;min-height:44px;padding:10px 15px;gap:12px}
 .hero{padding:28px 5% 35px}
 .hero h1{font-size:clamp(45px,14vw,64px);letter-spacing:-1.8px}
 .hero .intro{max-width:100%;font-size:14px}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;max-width:360px}
 .hero-actions .button{width:100%;min-height:48px;font-size:12px}
 .hero-actions .outline{min-height:44px}
 .hero-image{min-width:0;margin:0 4px;padding-left:12px}
 .hero-image>img:first-child{width:100%;height:clamp(310px,94vw,420px)}
 .hero-image .inset-photo{width:clamp(92px,28vw,125px);height:clamp(124px,36vw,165px)}
 .hero-image figcaption{max-width:100%;font-size:6.5px;letter-spacing:.3px;left:8px}
 .image-note{width:86px;height:86px;font-size:17px}
 .ribbon{gap:10px;font-size:clamp(9px,2.65vw,12px)}
 .section{padding-left:5%;padding-right:5%}
 .section-heading h2,.centered h2{font-size:clamp(33px,9.6vw,43px)}
 .service-list a{padding:23px;min-height:175px}
 .service-list a>span:nth-of-type(2){max-width:calc(100% - 43px)}
 .photos{gap:12px}
 .photos img{height:clamp(210px,62vw,285px)}
 .photos figcaption{font-size:10px}
 .text-link{display:inline-block;min-height:44px;padding-top:11px;padding-bottom:10px;line-height:1.6}
 .experience h2{font-size:clamp(32px,9.5vw,43px)}
 .steps article{padding-left:65px}
 .contact-card{padding:28px 20px}
 .contact-card .button,.secondary{font-size:12px;line-height:1.6;min-height:48px;padding:14px 12px}
 .phone{padding:8px;min-height:44px}
 .questions summary{min-height:44px}
 .questions details{padding:13px 17px}
 .final-cta h2{font-size:clamp(32px,9.4vw,43px)}
 .mobile-booking{left:5%;right:5%;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:50px;font-size:12px;padding:15px 23px}
 footer{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px));gap:25px}
 footer p{font-size:11px;line-height:1.8}
}
@media(max-width:350px){header .compact{max-width:144px;font-size:9px;padding:10px 12px}.hero h1{font-size:45px}.brand{font-size:27px}.hero-tag{font-size:7px}.service-list h3{font-size:27px}.contact-card h3{font-size:29px}.ribbon{gap:8px}}
@media(min-width:561px) and (max-width:800px){.hero{gap:28px;padding-left:5%;padding-right:5%}.hero h1{font-size:clamp(44px,7.5vw,60px)}.hero-image>img:first-child{height:420px}.hero-image .inset-photo{width:100px;height:135px}.hero-image figcaption{left:10px;font-size:6px}.image-note{width:80px;height:80px;font-size:16px}.hero-actions .button{font-size:11px;padding:14px 18px}.service-list{grid-template-columns:1fr}.service-list a{min-height:170px}.service-list a>span:nth-of-type(2){max-width:80%}.contact{gap:25px}.contact-card{padding:28px 22px}.contact-card h3{font-size:30px}.photos{grid-template-columns:1fr 1fr}.quote{grid-column:1/-1;grid-row:2}.quote p{max-width:350px;margin:15px auto}}
