:root{--ink:#382d30;--plum:#542335;--pink:#f5e9ed;--line:#dfd4d7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fffdfd;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ba798d;outline-offset:5px}header{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 5.5%}.brand{text-decoration:none;font-family:Georgia,serif;font-size:31px;line-height:1.2;white-space:nowrap}.brand i{font-size:25px}.brand span{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:3px;text-align:center;margin-top:7px}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a{text-decoration:none}.nav-cta{border:1px solid var(--plum);padding:12px 22px;border-radius:2px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding:70px 10% 26px 11%;display:flex;align-items:flex-start;flex-direction:column;background:var(--pink)}.eyebrow{font-size:12px;letter-spacing:2.2px;font-weight:600;margin:0 0 24px;color:var(--plum)}h1,h2,h3,p{margin-top:0}h1,h2,h3,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(54px,5.5vw,88px);line-height:1.06;letter-spacing:-3px;margin-bottom:25px}em{font-weight:400;color:var(--plum)}.intro{max-width:420px;color:#62565a;font-size:17px;line-height:1.8}.button{display:inline-block;padding:15px 25px;background:var(--plum);color:white;border:1px solid var(--plum);text-decoration:none;cursor:pointer;font-size:14px;border-radius:2px}.button:hover{background:#70364b}.text-link{text-decoration:none;border-bottom:1px solid #91747e;padding-bottom:3px;font-size:14px}.hero .text-link{margin:18px 0 35px}.hero-foot{display:flex;flex-wrap:wrap;gap:20px;margin-top:auto;font-size:10px;letter-spacing:1px;padding-top:18px;border-top:1px solid #d8c4cc;width:100%}.hero-image{position:relative;min-height:600px}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.image-note{position:absolute;bottom:24px;left:30px;color:white;font:italic 20px Georgia;text-shadow:0 1px 5px #000;background:#3023208c;padding:8px 14px}.ribbon{padding:25px 6%;background:var(--plum);color:white;display:flex;align-items:center;justify-content:space-between;gap:16px}.ribbon p{font:italic 24px Georgia;margin:0}.ribbon span{font-size:13px;letter-spacing:1px}.section{padding:90px 8%}h2{font-size:clamp(34px,3.8vw,55px);line-height:1.13;letter-spacing:-1.3px;margin-bottom:28px}h3{font-size:25px;line-height:1.3;margin-bottom:12px}.story{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:60px}.story-text{max-width:610px;color:#655b5e}.signature{font:italic 25px Georgia;color:var(--plum);margin-top:28px}.services{padding-top:40px}.section-title{text-align:center}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:48px}.service-grid article{border-top:1px solid var(--line);padding-top:25px}.number{font:italic 19px Georgia;color:#986276;display:block;margin-bottom:22px}.service-grid p{font-size:15px;color:#655b5e;max-width:360px}.portfolio{background:#f5f1f2}.portfolio-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.portfolio-heading>p{font-size:15px;color:#655b5e}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}.photo{padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;aspect-ratio:4/5}.photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.04)}.gallery-hint{font-size:13px;margin:16px 0 0;color:#655b5e}.testimonial{text-align:center;padding:80px 18%;background:#fffdfd}blockquote{font-size:clamp(24px,3vw,39px);line-height:1.4;margin:25px 0;color:var(--plum)}.testimonial>p:last-child{font-size:14px;margin-bottom:0}.testimonial span{color:#71656a}.pricing{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;border-top:1px solid var(--line)}.pricing-intro>p:not(.eyebrow){max-width:360px;color:#655b5e}.price-list article{padding:25px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.price-list article:first-child{padding-top:0}.price-list h3{font-size:24px;margin:0 0 8px}.price-list article p{margin:0;font-size:14px;color:#655b5e}.price-list strong{font-weight:400;font-size:17px;white-space:nowrap;color:var(--plum)}.price-note{font-size:13px;color:#71656a;margin-top:24px}.contact{background:var(--plum);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact .eyebrow{color:#e4bfcc}.contact>div>p:not(.eyebrow){max-width:420px;color:#efdee4}.contact-links{display:flex;flex-direction:column;gap:8px}.contact-links a{text-underline-offset:4px;overflow-wrap:anywhere}.contact-meta{font-size:14px;margin-top:25px}form{padding-top:8px}label{display:block;font-size:14px;margin:0 0 8px}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #b895a2;border-radius:2px;background:#ffffff0a;color:white;margin-bottom:22px;min-width:0}input::placeholder,textarea::placeholder{color:#d9bcc7}select option{background:white;color:var(--ink)}input[type=date]{color-scheme:dark}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.light{background:#f7ecf0;color:var(--plum);width:100%;border:0}.light:hover{background:white}.form-note{font-size:12px;color:#e3cbd4;margin-top:13px}footer{padding:40px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer>p{font:italic 20px Georgia;margin:0}footer>div{display:flex;flex-wrap:wrap;gap:18px;font-size:12px}footer>div span{width:100%;color:#786c71}dialog{padding:16px;background:#23191e;color:white;border:0;max-width:94vw;max-height:94vh;width:900px}dialog::backdrop{background:#140c12e8}#full-image{width:100%;height:72vh;object-fit:contain}.close{position:absolute;top:16px;right:16px;border:0;border-radius:50%;width:44px;height:44px;background:white;font-size:30px;cursor:pointer}.lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:15px}.lightbox-controls button{padding:10px;background:none;color:white;border:1px solid #806675;cursor:pointer}.lightbox-controls p{font-size:14px;text-align:center;margin:0}.skip{position:absolute;left:10px;top:-90px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.hero-copy{padding-top:50px}.hero-foot{gap:10px}.section{padding:65px 6%}.story,.pricing,.contact{gap:40px}.price-list article{align-items:start;flex-direction:column;gap:8px}footer>p{display:none}}@media(max-width:700px){header{min-height:95px;padding:20px 6%}.brand{font-size:26px}nav>a:not(.nav-cta){display:none}.nav-cta{padding:10px 12px;font-size:12px}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 7% 25px}h1{font-size:62px}.hero-image{min-height:420px}.hero-foot{font-size:10px;gap:20px}.ribbon{flex-direction:column;text-align:center;padding:25px 6%}.ribbon p{font-size:22px}.ribbon span{font-size:12px}.story,.pricing,.contact{grid-template-columns:1fr;gap:20px}.section{padding:60px 7%}h2{font-size:39px}.story{padding-bottom:20px}.service-grid{grid-template-columns:1fr;gap:20px;margin-top:20px}.service-grid article{display:grid;grid-template-columns:35px 1fr;gap:0 15px}.service-grid p{grid-column:2;max-width:none}.service-grid .number{grid-row:1/3}.section-title{text-align:left}.portfolio-heading{display:block}.gallery{grid-template-columns:1fr 1fr;gap:10px}.testimonial{padding:60px 8%}.price-list article{flex-direction:row;align-items:center}.price-list h3{font-size:21px}.price-list strong{font-size:15px}.pricing-intro{margin-bottom:25px}.contact{gap:35px}footer{align-items:start}footer>div{justify-content:end;text-align:right;gap:14px}.form-row{gap:12px}.image-note{font-size:17px;left:20px}.lightbox-controls p{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Contact reliability, legibility and small-screen navigation */
[hidden]{display:none!important}.direct-whatsapp{display:inline-block;margin-top:18px;text-underline-offset:4px}.enquiry-actions{display:flex;gap:12px;flex-wrap:wrap}.enquiry-actions .button{width:auto;flex:1;text-align:center}.outline{border-color:#e3cbd4;color:white;background:transparent}.outline:hover{background:#70364b}#enquiry-preview{margin-top:24px;padding-top:24px;border-top:1px solid #b895a2}#message-preview{background:#ffffff10;font-size:15px;line-height:1.6;resize:vertical}.gallery-open{overflow:hidden}.brand span{font-size:12px;letter-spacing:2px}.hero-foot{font-size:12px;letter-spacing:.5px}footer>div{font-size:14px}.form-note,.price-note,.gallery-hint{font-size:14px}#full-image{height:min(72vh,760px);height:min(72dvh,760px)}
@media(max-width:700px){header{flex-wrap:wrap;gap:18px}header nav{width:100%;justify-content:space-between;gap:10px;flex-wrap:wrap}nav>a:not(.nav-cta){display:inline-block;font-size:14px}.nav-cta{font-size:14px}h1{font-size:clamp(42px,12vw,62px);letter-spacing:-1.5px}.hero-foot{gap:10px;font-size:12px}.price-list article{flex-wrap:wrap}.enquiry-actions{flex-direction:column}footer{flex-wrap:wrap}footer>div{justify-content:start;text-align:left}.lightbox-controls{flex-wrap:wrap}.lightbox-controls p{order:3;width:100%;font-size:14px}.image-note{max-width:calc(100% - 40px)}}

.hero-service{font-size:17px;line-height:1.5;color:var(--plum);max-width:420px;font-weight:600}.floating-whatsapp{position:fixed;z-index:8;bottom:max(20px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right));display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 18px;border-radius:28px;background:#176c3c;color:white;text-decoration:none;font-size:14px;font-weight:600;box-shadow:0 4px 16px #23191e30}.floating-whatsapp:hover{background:#11542e}.floating-whatsapp svg{flex-shrink:0}footer{padding-bottom:100px}.photo{display:block}@media(max-width:700px){.floating-whatsapp{bottom:max(12px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));padding:12px 15px}.hero-service{font-size:16px}footer{padding-bottom:100px}}
