*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff9f7;color:#241918;font-family:"DM Sans",sans-serif}a{text-decoration:none;color:inherit}.topline{height:30px;background:#2b2020;color:#f9e9e5;display:grid;place-items:center;font-size:9px;letter-spacing:.22em}.topline span{color:#e3a99e}header{height:82px;padding:0 5vw;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:rgba(255,249,247,.94);backdrop-filter:blur(15px);z-index:50;border-bottom:1px solid #ead8d4}.brand,.footer-brand{display:flex;align-items:center;gap:9px}.brand img{height:58px;width:125px;object-fit:contain}.brand span,.footer-brand span{font-size:8px;letter-spacing:.23em;border-left:1px solid #cba9a2;padding-left:10px}nav{display:flex;gap:25px;align-items:center;font-size:11px;font-weight:700}nav>a:not(.btn):hover{color:#b16f67}.menu{display:none;border:0;background:none;font-size:23px}.btn{display:inline-flex;justify-content:center;align-items:center;background:#a96760;color:#fff;padding:14px 22px;border:0;border-radius:999px;font:700 10px "DM Sans";letter-spacing:.1em;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #b47a6b30}.hero{height:calc(100vh - 112px);min-height:650px;position:relative;overflow:hidden}.cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,27,26,.62),rgba(46,27,26,.12) 70%),linear-gradient(0deg,rgba(35,20,20,.3),transparent 45%)}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-50%);color:#fff;max-width:630px}.eyebrow{font-size:9px;letter-spacing:.25em;font-weight:700;color:#b5746c}.hero .eyebrow,.book-strip .eyebrow,.contact .eyebrow{color:#f0c4ba}h1,h2{font-family:"Italiana",serif;font-weight:400}.hero h1{font-size:clamp(58px,7vw,100px);line-height:.9;margin:20px 0}.hero h1 em,h2 em{font-style:italic;color:#e8aaa0}.hero-copy>p{font-size:16px;line-height:1.75;max-width:510px}.actions{display:flex;align-items:center;gap:20px;margin-top:32px}.btn.light{background:#fff5f2;color:#3b2927}.btn.outline{background:transparent;border:1px solid currentColor}.soft-link,.text-link{font-size:10px;letter-spacing:.12em;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}.section{padding:105px 6vw}.welcome{text-align:center;background:#fff}.welcome h2,.heading h2,.reviews h2,.form-intro h2,.contact h2,.book-strip h2{font-size:clamp(46px,5.6vw,76px);line-height:.98;margin:16px 0 25px}.welcome>p{max-width:650px;margin:auto;color:#73615d;line-height:1.8}.mini-values{display:flex;justify-content:center;gap:45px;margin-top:45px;color:#9c655e;font-size:11px}.heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.heading h2{margin-bottom:0}.heading>p{max-width:370px;color:#796763;line-height:1.7}.services{background:#f5e9e5}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.tab{padding:12px 20px;border:1px solid #cfaea7;background:transparent;border-radius:999px;font:700 10px "DM Sans";letter-spacing:.08em;cursor:pointer}.tab.active{background:#a96760;color:white;border-color:#a96760}.service-list{border-top:1px solid #d5bdb7}.service-row{display:grid;grid-template-columns:1.7fr .55fr .55fr auto;gap:20px;align-items:center;padding:22px 5px;border-bottom:1px solid #dbc5bf}.service-row h3{font:400 23px "Italiana";margin:0 0 5px}.service-row p{font-size:12px;color:#7b6864;margin:0}.duration,.price{font-size:11px;font-weight:700}.mini-book{font-size:9px;font-weight:700;letter-spacing:.1em;border-bottom:1px solid}.center{text-align:center;margin-top:40px}.rewards{background:#2b2020;color:#fff}.rewards .heading>p{color:#cdbab6}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.reward{min-height:285px;padding:32px;background:#382a29;border:1px solid #56403e;display:flex;flex-direction:column}.reward .num{font:400 38px "Italiana";color:#dca89e}.reward h3{font:400 28px "Italiana";margin:30px 0 10px}.reward p{color:#cfbfbb;font-size:13px;line-height:1.7}.reward strong{margin-top:auto;color:#f0c3b9;font-size:12px}.fine{font-size:9px;color:#93817d;margin-top:22px}.gallery-section{overflow:hidden;background:#fff}.carousel-shell{position:relative;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;padding:20px 0 35px}.gallery-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 calc(50vw - min(31vw,390px)/2);scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery-track img{flex:0 0 min(31vw,390px);height:min(44vw,540px);object-fit:cover;border-radius:22px;scroll-snap-align:center;opacity:.42;transform:scale(.91);filter:saturate(.8);transition:.55s cubic-bezier(.2,.8,.2,1);box-shadow:0 18px 45px #4c29221a}.gallery-track img.focused{opacity:1;transform:scale(1);filter:saturate(1.06);box-shadow:0 24px 65px #6d3f352d}.fade{position:absolute;top:0;bottom:0;width:11vw;z-index:3;pointer-events:none}.fade-left{left:0;background:linear-gradient(90deg,#fff,transparent)}.fade-right{right:0;background:linear-gradient(-90deg,#fff,transparent)}.arrow{position:absolute;top:50%;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid #c99d95;background:#fff9f7d9;font-size:27px;cursor:pointer;transform:translateY(-50%)}.prev{left:3vw}.next{right:3vw}.book-strip{text-align:center;background:#ad746c;color:white}.book-strip h2 em{color:#ffd7cf}.steps{max-width:950px;margin:50px auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff55;border-bottom:1px solid #ffffff55}.steps article{padding:32px}.steps article+article{border-left:1px solid #ffffff55}.steps b{font:400 24px "Italiana"}.steps h3{font:400 24px "Italiana";margin:13px 0 6px}.steps p{font-size:11px;color:#f7dfda}.centered{justify-content:center}.safe{font-size:9px;opacity:.7}.reviews{text-align:center;background:#fff}.reviews>p{color:#776560}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:40px 0}.review{text-align:left;background:#f8efec;padding:30px;min-height:210px}.stars{color:#b16f67;letter-spacing:.13em}.review blockquote{margin:20px 0;line-height:1.7;color:#65534f}.review b{font-size:10px}.enquiry{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:#f5e9e5}.form-intro p{color:#776560;line-height:1.7;max-width:440px}form{background:#fff;padding:40px;border-radius:24px;box-shadow:0 18px 50px #744d4510}label{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:20px}input,textarea{width:100%;border:0;border-bottom:1px solid #d8c1bb;background:transparent;padding:13px 2px;font:400 14px "DM Sans";outline:none;margin-top:5px}textarea{resize:vertical}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-note{font-size:9px;color:#8a7772;margin-top:15px}.contact{display:flex;justify-content:space-between;align-items:center;background:#2b2020;color:white}.contact p{color:#cdbbb7}.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.contact .outline{color:#fff}footer{padding:45px 6vw;background:#171110;color:#eee2df;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand img{height:55px;width:115px;object-fit:contain}.footer-brand span{color:#cbb7b2}footer p{font:400 17px "Italiana";color:#c7aaa4}footer small{font-size:9px;color:#8c7b77}
@media(max-width:800px){header{height:70px}.brand img{height:50px;width:100px}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff9f7;padding:25px 6vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ead8d4}nav.open{display:flex}.hero{height:700px}.hero-shade{background:linear-gradient(0deg,rgba(44,24,24,.75),rgba(44,24,24,.08) 75%)}.hero-copy{left:7vw;right:7vw;top:auto;bottom:65px;transform:none}.hero h1{font-size:58px}.section{padding:75px 6vw}.heading{display:block}.heading>p{margin-top:20px}.mini-values{flex-direction:column;gap:12px}.service-row{grid-template-columns:1fr auto}.service-row p{grid-column:1}.service-row .price{grid-column:1}.service-row .mini-book{grid-column:2;grid-row:2/4}.reward-grid{grid-template-columns:1fr}.gallery-track{gap:12px;padding:0 15vw}.gallery-track img{flex-basis:70vw;height:92vw}.fade{width:12vw}.arrow{display:none}.steps{grid-template-columns:1fr}.steps article+article{border-left:0;border-top:1px solid #ffffff55}.enquiry{grid-template-columns:1fr}.form-two{grid-template-columns:1fr;gap:0}form{padding:28px 22px}.contact{display:block}.contact-actions{margin-top:30px}.actions{flex-wrap:wrap}footer{flex-direction:column;align-items:flex-start}}
.google-review-actions{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}
.review-btn{background:#2b2020}
@media(max-width:800px){.google-review-actions{flex-direction:column}}

.social-icons{display:flex;align-items:center;gap:8px}
.social-icons a{width:34px;height:34px;border:1px solid #d9b9b2;border-radius:50%;display:grid;place-items:center;transition:.25s}
.social-icons a:hover{background:#f2ddd8;transform:translateY(-2px)}
.social-icons svg{width:16px;height:16px;fill:none;stroke:#9e625b;stroke-width:1.8}
.social-icons a:nth-child(2) svg{fill:#9e625b;stroke:none}
.google-trust{padding:16px 6vw;background:#fff;display:flex;justify-content:center;align-items:center;gap:28px;border-bottom:1px solid #f0e3df;font-size:11px}
.google-trust>div{display:flex;align-items:center;gap:8px}.google-trust strong{font-size:14px}.google-trust a{font-size:9px;font-weight:700;letter-spacing:.1em;border-bottom:1px solid}
.gmark{font-weight:800;font-size:17px}
.footer-social .social-icons a{border-color:#6d5652}.footer-social .social-icons svg{stroke:#d9aaa1}.footer-social .social-icons a:nth-child(2) svg{fill:#d9aaa1}
@media(max-width:800px){nav .social-icons{margin-top:5px}.google-trust{gap:12px;flex-wrap:wrap}.google-trust>div{flex-wrap:wrap;justify-content:center}.footer-social{order:3}}


/* Readability update — intentionally roomier, without oversized display headings */
body{font-size:16px}
.topline{height:34px;font-size:11px}
.brand span,.footer-brand span{font-size:10px}
nav{font-size:14px;gap:28px}
.btn{font-size:12px;padding:15px 24px}
.eyebrow{font-size:11px}
.hero-copy>p{font-size:18px;line-height:1.7}
.soft-link,.text-link{font-size:12px}
.welcome>p,.heading>p,.form-intro p,.contact p{font-size:16px;line-height:1.75}
.mini-values{font-size:13px}
.tab{font-size:12px}
.service-row{padding:25px 5px}
.service-row h3{font-size:26px}
.service-row p{font-size:15px;line-height:1.55}
.duration,.price{font-size:14px}
.mini-book{font-size:11px}
.reward p{font-size:15px}
.reward strong{font-size:14px}
.fine{font-size:11px;line-height:1.6}
.steps p{font-size:14px;line-height:1.6}
.safe{font-size:11px;line-height:1.6}
.reviews>p{font-size:16px}
.review blockquote{font-size:15px}
.review b{font-size:12px}
label{font-size:12px}
input,textarea{font-size:16px}
.form-note{font-size:11px;line-height:1.5}
footer small{font-size:11px}
.google-trust{font-size:13px}
.google-trust strong{font-size:16px}
.google-trust a{font-size:11px}
@media(max-width:800px){
  nav{font-size:16px}
  .hero-copy>p{font-size:17px}
  .welcome>p,.heading>p,.form-intro p,.contact p{font-size:16px}
  .service-row p{font-size:14px}
  .duration,.price{font-size:13px}
}

/* Header brand descriptor visibility update */
.brand span{
  font-size:15px;
  font-weight:700;
  letter-spacing:.18em;
  color:#4d3a37;
  opacity:1;
}
@media(max-width:800px){
  .brand span{
    font-size:12px;
    font-weight:700;
    letter-spacing:.13em;
  }
}

/* Enquiry offers + custom-design upload */
.enquiry-perks{display:grid;gap:12px;margin-top:32px}
.enquiry-perks article{display:flex;gap:13px;align-items:flex-start;padding:16px 18px;background:#fff9f7;border:1px solid #e4cbc5;border-radius:16px}
.enquiry-perks article>span{color:#a96760;font-size:18px;line-height:1.2}
.enquiry-perks strong{font-size:13px;letter-spacing:.03em;color:#3e2b29}
.enquiry-perks p{font-size:13px!important;line-height:1.55!important;margin:5px 0 0!important;color:#776560}
.optional{font-weight:400;letter-spacing:0;color:#8a7772}
.file-input{border:1px dashed #d2aea6;border-radius:12px;padding:12px;margin-top:10px;background:#fff9f7}
.file-input::file-selector-button{border:0;border-radius:999px;background:#2b2020;color:#fff;padding:9px 13px;margin-right:10px;font:700 10px "DM Sans";letter-spacing:.06em;cursor:pointer}

/* Review carousel */
.review-carousel-shell{position:relative;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;padding:22px 0 35px}
.review-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 calc(50vw - min(31vw,390px)/2);scrollbar-width:none}
.review-track::-webkit-scrollbar{display:none}
.review-track .review{flex:0 0 min(31vw,390px);scroll-snap-align:center;min-height:330px;border-radius:22px;opacity:.48;transform:scale(.92);transition:.55s cubic-bezier(.2,.8,.2,1);box-shadow:0 18px 45px #4c292214;display:flex;flex-direction:column}
.review-track .review.focused{opacity:1;transform:scale(1);box-shadow:0 24px 65px #6d3f3524}
.review-track .review blockquote{overflow:auto;scrollbar-width:thin;flex:1;max-height:330px;padding-right:5px}
.review-track .review b{margin-top:auto}
.review-fade{position:absolute;top:0;bottom:0;width:11vw;z-index:3;pointer-events:none}
.review-fade-left{left:0;background:linear-gradient(90deg,#fff,transparent)}
.review-fade-right{right:0;background:linear-gradient(-90deg,#fff,transparent)}
.review-arrow{position:absolute;top:50%;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid #c99d95;background:#fff9f7e8;font-size:27px;cursor:pointer;transform:translateY(-50%)}
.review-prev{left:3vw}.review-next{right:3vw}
@media(max-width:800px){.review-track{gap:12px;padding:0 15vw}.review-track .review{flex-basis:70vw;min-height:360px}.review-track .review blockquote{max-height:380px}.review-fade{width:12vw}.review-arrow{display:none}}
