:root{--ivory:#f7f4ee;--paper:#fbf9f4;--charcoal:#20211f;--sage:#9cad90;--sage-dark:#74836b;--sand:#d8d0c3;--blue:#cbd9e2;--line:rgba(32,33,31,.14);--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(247,244,238,.96);backdrop-filter:blur(16px);z-index:50}.brand{display:flex;flex-direction:column;line-height:1}.wordmark{font:500 31px/1 Manrope,Inter,sans-serif;letter-spacing:.19em}.descriptor{font-size:9px;letter-spacing:.45em;margin-top:9px;margin-left:3px}.mark-o{color:var(--sage);position:relative}.mark-o:before,.mark-o:after{content:"";position:absolute;background:var(--ivory);width:6px;height:16px;transform:rotate(45deg)}.mark-o:before{top:-1px;right:3px}.mark-o:after{bottom:-1px;left:3px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:12px}.site-header nav a{padding:8px 0;border-bottom:1px solid transparent}.site-header nav a:hover{border-color:var(--sage-dark)}.menu-toggle{display:none;background:none;border:0;font:500 12px Inter;letter-spacing:.12em;color:var(--charcoal)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 23px;border:1px solid var(--sage-dark);background:var(--sage-dark);color:#fff;border-radius:7px;font-size:13px;font-weight:500;transition:.2s}.button:hover{background:var(--charcoal);border-color:var(--charcoal);transform:translateY(-1px)}.button-small{min-height:40px;padding:0 18px}.button-ghost{background:transparent;color:var(--charcoal)}.section-grid,.split{max-width:var(--max);margin:auto;padding:82px 4vw;display:grid;grid-template-columns:1fr 1.22fr;gap:5vw;align-items:center}.hero{min-height:720px;padding-top:58px;padding-bottom:72px}.hero-copy{padding:22px 0}.eyebrow{display:block;font-size:10px;letter-spacing:.34em;font-weight:600;margin-bottom:28px;color:var(--sage-dark)}h1,h2,h3{font-family:Manrope,Inter,sans-serif;font-weight:300;margin:0;letter-spacing:-.038em}h1{font-size:clamp(54px,5.5vw,94px);line-height:1.01}h1 span,h2 span{color:var(--sage-dark)}h2{font-size:clamp(40px,4vw,68px);line-height:1.06}h3{font-size:21px;line-height:1.24}.rule{width:64px;height:2px;background:var(--sage);margin:29px 0}.hero p,.editorial-copy>p{font-size:19px;max-width:620px;color:#50554e}.actions{display:flex;gap:13px;margin-top:32px}.trust-line{display:flex;flex-wrap:wrap;gap:12px 23px;margin-top:34px;font-size:12px;color:#61665e}.trust-line span:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--sage);margin-right:9px}.hero-image{margin:0}.hero-image img{width:100%;height:600px;object-fit:cover;object-position:center;border-radius:2px}.hero-image figcaption{font-size:10px;color:#777;margin-top:10px;letter-spacing:.11em;text-transform:uppercase}.services,.process,.local-seo,.faq,.tips,.contact-strip{max-width:var(--max);margin:auto;padding:94px 4vw;border-top:1px solid var(--line)}.section-heading{max-width:760px;margin-bottom:48px}.section-heading p{color:#64695f}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid a{padding:32px 28px 38px;border-right:1px solid var(--line);min-height:245px;transition:.2s}.service-grid a:last-child{border-right:0}.service-grid a:hover{background:var(--paper);transform:translateY(-3px)}.service-grid span,.process li>span{font-size:11px;color:var(--sage-dark);letter-spacing:.18em}.service-grid h3{margin:34px 0 15px}.service-grid p{font-size:14px;color:#63675f}.editorial{border-top:1px solid var(--line)}.photo-stack{position:relative;min-height:640px}.photo-stack .large{width:82%;height:560px;object-fit:cover}.photo-stack .small{position:absolute;right:0;bottom:0;width:42%;height:300px;object-fit:cover;border:14px solid var(--ivory)}.editorial-copy{padding:28px 0}.editorial-copy dl{margin:40px 0 0}.editorial-copy dl div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;padding:19px 0;border-top:1px solid var(--line);align-items:start}dt{font-family:Manrope;font-size:19px}dd{margin:0;color:#666b63}.centered{text-align:center;margin-left:auto;margin-right:auto}.process ol{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr)}.process li{padding:32px;border-right:1px solid var(--line)}.process li:last-child{border:0}.process h3{margin:32px 0 13px}.process p{font-size:14px;color:#666b63}.before-after img{width:100%;max-height:720px;object-fit:cover}.reverse{grid-template-columns:.88fr 1.12fr}.text-link{display:inline-block;margin-top:22px;color:var(--sage-dark);border-bottom:1px solid var(--sage-dark)}.local-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.local-grid article{background:var(--ivory);padding:36px}.local-grid article p{min-height:76px;color:#666b63}.local-grid a{color:var(--sage-dark);font-size:14px}.tips-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tips-grid article{background:var(--paper);border:1px solid var(--line)}.tips-grid img{aspect-ratio:4/5;object-fit:cover;object-position:center top;width:100%;background:var(--paper)}.tips-grid div{padding:22px}.tips-grid h3{font-size:20px;margin-bottom:8px}.tips-grid p{font-size:14px;color:#666b63;margin:0}.visit{background:var(--paper);max-width:none;padding-left:max(4vw,calc((100vw - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100vw - var(--max))/2 + 4vw))}.visit img{width:100%;height:570px;object-fit:cover}.meta-list{display:grid;gap:15px;margin:28px 0}.meta-list p{margin:0}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{font-family:Manrope;font-size:22px;font-weight:400;cursor:pointer;list-style:none}summary:after{content:"+";float:right;color:var(--sage-dark)}details[open] summary:after{content:"−"}.faq details p{max-width:820px;color:#63675f}.instagram-box{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:35px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}footer{padding:66px 4vw 36px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:30px;align-items:start}footer h4{font:500 12px Inter;letter-spacing:.14em;margin:0 0 15px}footer p,footer a{font-size:13px;color:#5f645c}footer>div{display:flex;flex-direction:column;gap:8px}footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:21px;color:#777}.footer-brand .wordmark{font-size:26px}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:40;border-radius:999px;box-shadow:0 8px 30px rgba(0,0,0,.14)}@media(max-width:980px){.site-header nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--ivory);padding:24px 4vw;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu-toggle{display:block}.section-grid,.split,.reverse{grid-template-columns:1fr}.hero{padding-top:45px}.hero-image img{height:470px}.service-grid{grid-template-columns:1fr 1fr}.service-grid a:nth-child(2){border-right:0}.process ol{grid-template-columns:1fr 1fr}.process li:nth-child(2){border-right:0}.local-grid{grid-template-columns:1fr}.photo-stack{min-height:550px}.tips-grid{grid-template-columns:1fr 1fr}.visit img{height:440px}footer{grid-template-columns:1fr 1fr}}@media(max-width:640px){.site-header{height:78px;padding:0 20px}.site-header nav{top:78px}.wordmark{font-size:25px}.descriptor{font-size:8px}.site-header .button-small{display:none}.section-grid,.split,.services,.process,.local-seo,.faq,.tips,.contact-strip{padding:62px 22px}.hero{min-height:auto}.hero-image img{height:390px}.hero p,.editorial-copy>p{font-size:17px}.actions{flex-direction:column}.service-grid,.process ol,.tips-grid{grid-template-columns:1fr}.service-grid a,.process li{border-right:0;border-bottom:1px solid var(--line)}.photo-stack{min-height:445px}.photo-stack .large{height:385px;width:92%}.photo-stack .small{height:205px}.local-grid article p{min-height:auto}.visit{padding-left:22px;padding-right:22px}.visit img{height:360px}.instagram-box{align-items:flex-start;flex-direction:column}footer{grid-template-columns:1fr}.floating-wa{right:14px;bottom:14px}}


/* Bali-wide pickup section */
.pickup-band{max-width:var(--max);margin:0 auto;padding:88px 4vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5vw;align-items:start}
.pickup-copy{min-width:0}.pickup-copy p{font-size:18px;max-width:650px;color:#50554e}.pickup-copy .text-link{margin-top:0;align-self:center}
.pickup-steps{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.pickup-steps>div{padding:28px;min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.pickup-steps span{font-size:11px;color:var(--sage-dark);letter-spacing:.18em}.pickup-steps h3{margin:24px 0 10px}.pickup-steps p{font-size:14px;color:#666b63;margin:0}.pickup-note{grid-column:1/-1;margin:0;font-size:12px;color:#747970}

/* Alignment and readability corrections */
.hero-image,.hero-image img,.before-after img,.visit img,.photo-stack img{min-width:0}
.hero-image img{object-position:50% 50%;aspect-ratio:4/3;height:auto;max-height:600px}
.photo-stack .large{object-position:center 52%}.photo-stack .small{object-position:center 45%}
.before-after img{object-position:center center;aspect-ratio:5/4;height:auto}
.visit img{object-position:center 54%;aspect-ratio:5/4;height:auto}
.editorial-copy dl div{grid-template-columns:minmax(128px,150px) minmax(0,1fr);column-gap:22px;align-items:start}
.editorial-copy dt{overflow-wrap:anywhere}.editorial-copy dd{min-width:0}
.service-grid a,.process li,.tips-grid article,.local-grid article{min-width:0}
h1,h2,h3,p,dd,dt,a{overflow-wrap:break-word}

@media(max-width:980px){.pickup-band{grid-template-columns:1fr}.hero-image img{max-height:none}.editorial-copy dl div{grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:640px){.pickup-band{padding:62px 22px}.pickup-steps{grid-template-columns:1fr}.pickup-copy p{font-size:17px}.editorial-copy dl div{grid-template-columns:1fr;row-gap:5px}.hero-image img{aspect-ratio:4/3}.before-after img,.visit img{aspect-ratio:4/3}.photo-stack .small{right:-2px;width:48%;border-width:10px}}

.tips-grid article:nth-child(2) img{object-position:center top}.tips-grid article:nth-child(4) img{object-position:center top}
@media(max-width:1180px){.editorial-copy dl div{grid-template-columns:110px minmax(0,1fr)}}


/* Home repair versus workshop clarity */
.home-service{max-width:var(--max);margin:0 auto;padding:94px 4vw;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:5vw;align-items:start}
.home-service-copy p{font-size:18px;max-width:620px;color:#50554e}.home-service-actions{margin-top:30px}.home-service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.home-service-grid article{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.home-service-grid article:first-child{background:var(--paper)}
.home-service-grid span{font-size:11px;color:var(--sage-dark);letter-spacing:.18em}.home-service-grid h3{margin:26px 0 18px}.home-service-grid ul{padding:0;margin:0;list-style:none;color:#62675f;font-size:14px}
.home-service-grid li{padding:8px 0;border-top:1px solid var(--line)}.home-service-grid li:before{content:"—";color:var(--sage-dark);margin-right:9px}.home-service-note{grid-column:1/-1;margin:0;font-size:12px;color:#747970}

/* Crisp brand-book logo monument replacing low-resolution bottom photograph */
.brand-monument{position:relative;min-height:570px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(to bottom,var(--paper) 0%,var(--paper) 73%,#cbd9e2 73%,#cbd9e2 100%);border:1px solid var(--line)}
.brand-monument:before{content:"";position:absolute;width:430px;height:430px;border:42px solid rgba(156,173,144,.18);border-radius:50%;right:-170px;top:-180px}
.brand-monument:after{content:"";position:absolute;left:0;right:0;top:73%;height:1px;background:rgba(32,33,31,.12);box-shadow:0 18px 35px rgba(32,33,31,.08)}
.monument-wordmark{position:relative;z-index:1;font:500 clamp(64px,7vw,114px)/1 Manrope,Inter,sans-serif;letter-spacing:.16em;margin-left:.16em;color:var(--charcoal)}
.monument-o{position:relative;color:var(--sage)}.monument-o:before,.monument-o:after{content:"";position:absolute;background:var(--paper);width:13%;height:48%;transform:rotate(45deg)}.monument-o:before{top:-3%;right:8%}.monument-o:after{bottom:-3%;left:8%}
.monument-descriptor{position:relative;z-index:1;font-size:13px;letter-spacing:.55em;margin:22px 0 0 .55em}.monument-line{position:relative;z-index:1;width:58px;height:2px;background:var(--sage);margin:34px 0 20px}.brand-monument p{position:relative;z-index:1;margin:0;font-size:10px;letter-spacing:.3em;color:var(--sage-dark)}

/* Recognisable social/contact links */
.social-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.social-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:22px;align-items:center;padding:28px;border:1px solid var(--line);background:var(--paper);transition:.2s}
.social-card:hover{transform:translateY(-2px);border-color:var(--sage-dark)}.social-card span:nth-child(2){display:flex;flex-direction:column;min-width:0}.social-card small{font-size:9px;letter-spacing:.28em;color:var(--sage-dark);margin-bottom:5px}.social-card strong{font:400 20px/1.25 Manrope,Inter,sans-serif;overflow-wrap:anywhere}.social-card em{font-style:normal;font-size:13px;color:#686d65;margin-top:7px}.social-card b{font-size:12px;font-weight:500;color:var(--sage-dark)}
.social-icon{width:58px;height:58px;border:1px solid var(--sage);display:grid;place-items:center;border-radius:50%}.social-icon svg,.footer-instagram svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5}.footer-instagram{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:8px}.footer-instagram svg{width:16px;height:16px;flex:none}

@media(max-width:980px){.home-service{grid-template-columns:1fr}.social-contact-grid{grid-template-columns:1fr}.brand-monument{min-height:470px}}
@media(max-width:640px){.home-service{padding:62px 22px}.home-service-grid{grid-template-columns:1fr}.home-service-copy p{font-size:17px}.brand-monument{min-height:390px}.monument-wordmark{font-size:54px}.monument-descriptor{font-size:9px}.social-card{grid-template-columns:48px minmax(0,1fr);padding:22px;gap:15px}.social-card b{grid-column:2}.social-icon{width:48px;height:48px}.social-card strong{font-size:17px}}

.visit-shop-photo{margin:0;align-self:stretch}.visit-shop-photo img{width:100%;height:570px;object-fit:cover;object-position:center center;box-shadow:0 18px 50px rgba(32,33,31,.08)}.visit-shop-photo figcaption{margin-top:10px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777}.visit .editorial-copy{align-self:center}@media(max-width:980px){.visit-shop-photo img{height:500px;object-position:center 58%}}@media(max-width:640px){.visit-shop-photo img{height:430px;object-position:center 55%}.visit-shop-photo figcaption{line-height:1.5}}

/* Search + AI discoverability content: visible, useful and on-brand */
.entity-summary,.answer-block,.related-services{max-width:var(--max);margin:auto;padding:94px 4vw;border-top:1px solid var(--line)}
.entity-summary{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:5vw;align-items:start}.entity-summary-copy>p{font-size:18px;color:#50554e;max-width:660px}.entity-summary-copy strong{font-weight:500;color:var(--charcoal)}
.intent-links{display:grid;border-top:1px solid var(--line)}.intent-links a{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);transition:.18s}.intent-links a:hover{padding-left:8px}.intent-links strong{font:400 18px/1.25 Manrope,Inter,sans-serif}.intent-links span{max-width:245px;text-align:right;font-size:12px;color:#6e736a}
.answer-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.answer-grid article{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.answer-grid strong{display:block;font:400 22px Manrope,Inter,sans-serif;margin-bottom:10px}.answer-grid p{margin:0;font-size:14px;color:#62675f}
.service-hero .service-lead{color:var(--sage-dark);font:300 clamp(25px,2.6vw,38px)/1.25 Manrope,Inter,sans-serif;margin:0 0 20px}.service-grid-static article{padding:32px 28px 38px;border-right:1px solid var(--line);min-height:245px}.service-grid-static article:last-child{border-right:0}.service-grid-static span{font-size:11px;color:var(--sage-dark);letter-spacing:.18em}.service-grid-static h3{margin:34px 0 15px}.service-grid-static p{font-size:14px;color:#63675f}
.semantic-facts{padding:34px;border:1px solid var(--line);background:var(--paper)}.semantic-facts p{padding:14px 0;margin:0;border-top:1px solid var(--line);color:#5e635b}.semantic-facts p:first-of-type{border-top:0}.semantic-facts strong{font-weight:500;color:var(--charcoal)}
.related-link-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.related-link-grid a{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;color:var(--sage-dark)}.related-link-grid a:hover{background:var(--paper)}
@media(max-width:980px){.entity-summary{grid-template-columns:1fr}.answer-grid,.related-link-grid{grid-template-columns:1fr 1fr}.service-grid-static{grid-template-columns:1fr 1fr}.service-grid-static article:nth-child(2){border-right:0}}
@media(max-width:640px){.entity-summary,.answer-block,.related-services{padding:62px 22px}.answer-grid,.related-link-grid,.service-grid-static{grid-template-columns:1fr}.intent-links a{flex-direction:column;gap:5px}.intent-links span{text-align:left;max-width:none}.service-grid-static article{border-right:0;border-bottom:1px solid var(--line)}}

/* AIEO / answer-first sections */
.answer-first{max-width:var(--max);margin:auto;padding:72px 4vw;border-top:1px solid var(--line)}
.answer-card{max-width:980px;background:var(--paper);border:1px solid var(--line);padding:38px 42px}
.answer-card h2{font-size:clamp(34px,3.2vw,52px);margin-bottom:20px}
.answer-card p{font-size:18px;color:#50554e;margin:0 0 16px}
.answer-card strong{color:var(--charcoal)}
.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:30px}
.fact-grid div{background:var(--ivory);padding:24px}
.fact-grid span{display:block;font-size:10px;letter-spacing:.22em;color:var(--sage-dark);margin-bottom:8px}
.fact-grid b{font-family:Manrope,Inter,sans-serif;font-weight:400;font-size:18px}
.guide-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:30px}
.guide-list article{border:1px solid var(--line);background:var(--paper);padding:28px}
.guide-list h3{margin-bottom:10px}.guide-list p{font-size:14px;color:#63675f;margin:0}
@media(max-width:980px){.fact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.answer-first{padding:54px 22px}.answer-card{padding:28px 24px}.fact-grid,.guide-list{grid-template-columns:1fr}}
