:root{--ink:#202423;--blue:#1b5a7d;--yellow:#f4b334;--coral:#e74e3d;--pink:#f5c1ca;--paper:#fffdf8;--soft:#f0eee9;--peach:#f5c1ca;--line:#d9d8d1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--blue)}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em;line-height:1.04}h1{font-size:clamp(3.4rem,6.9vw,7rem);margin-bottom:1.6rem}h2{font-size:clamp(2.5rem,4.5vw,4.6rem)}h3{font-size:1.4rem;line-height:1.25}em{color:var(--blue);font-weight:400}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.skip{position:absolute;top:-100px;background:white;padding:1rem;z-index:10}.skip:focus{top:0}.topline{background:var(--blue);color:white;padding:8px 5%;font-size:.75rem;letter-spacing:.16em;display:flex;justify-content:space-between}.header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;gap:28px;border-bottom:1px solid var(--line)}.logo{text-decoration:none;font-size:3.4rem;font-weight:900;letter-spacing:-.09em;line-height:1;color:var(--ink)}.logo span{display:block;font-size:.58rem;letter-spacing:.21em;margin:7px 0 0 4px}.header nav{display:flex;gap:28px}.header nav a{font-size:.92rem;text-decoration:none}.header nav a[aria-current]{text-decoration:underline}.header-book{font-size:.94rem;font-weight:bold;text-decoration:none;border-bottom:1px solid;padding:7px 0}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:6%;padding:65px 5% 72px;max-width:1550px;margin:auto;align-items:center}.eyebrow{font-size:.8rem;letter-spacing:.15em;font-weight:bold;margin-bottom:25px}.intro{font-size:1.15rem;max-width:490px;line-height:1.65}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;aspect-ratio:1/1.09;object-fit:cover;border-radius:45% 45% 10px 10px}.hero-photo figcaption{position:absolute;bottom:20px;left:-25px;padding:20px 25px;background:var(--peach);transform:rotate(-4deg);font-family:Georgia,serif;font-size:1.4rem;box-shadow:0 4px 14px #0001}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0 20px}.button{font-size:.94rem;font-weight:bold;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:17px 20px;border-radius:5px;min-height:54px}.primary{background:var(--blue);color:white}.primary:hover{background:#154863;color:white}.secondary{border:1px solid var(--ink)}.hero-note{font-size:.86rem;color:#5f635f}.ribbon{background:var(--peach);display:flex;justify-content:space-evenly;gap:20px;padding:21px;font-size:1.3rem;font-family:Georgia,serif}.ribbon span[aria-hidden]{color:var(--blue)}footer{padding:65px 5% 22px;background:var(--pink);color:var(--ink)}.footer-top{display:flex;justify-content:space-between;gap:35px;padding-bottom:42px}.footer-top .logo{color:var(--peach)}.footer-top p{font-family:Georgia,serif;font-size:1.6rem;line-height:1.3}.footer-top a{font-size:1rem}.footer-top a.logo{font-size:3.5rem}.footer-bottom{border-top:1px solid var(--ink);padding-top:22px;display:flex;justify-content:space-between;font-size:.82rem;gap:20px}.footer-bottom div{display:flex;gap:20px}footer a:hover{color:var(--blue)}
@media(max-width:950px){.header{flex-wrap:wrap}.header nav{order:3;width:100%;justify-content:space-between;gap:12px}.hero{gap:5%;padding-top:40px}.hero h1{font-size:4.5rem}.actions{flex-direction:column;align-items:stretch}.hero-photo figcaption{left:-12px;font-size:1.1rem}.footer-top{flex-wrap:wrap}}@media(max-width:620px){body{font-size:16px}.header{padding:20px 6%;gap:22px}.header nav{flex-wrap:wrap;justify-content:flex-start;gap:12px 22px}.header nav a{font-size:.86rem}.topline{padding:8px 6%;font-size:.63rem}.hero{grid-template-columns:1fr;padding:38px 6% 50px}.hero h1{font-size:4.15rem}.intro{font-size:1.04rem}.hero-photo{margin-top:18px}.hero-photo img{aspect-ratio:1.12}.hero-photo figcaption{left:12px;bottom:15px}.hero-note{font-size:.83rem}.ribbon{gap:10px;padding:18px 8px;font-size:1rem}.ribbon span:last-child{display:none}.ribbon span:nth-last-child(2){display:none}.footer-bottom{flex-direction:column}.footer-top{flex-direction:column;padding-bottom:15px}.footer-top p{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.section{padding:85px 6%;max-width:1500px;margin:auto}.section-head{margin-bottom:45px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%}.service-grid img{width:100%;aspect-ratio:1.25;object-fit:cover;margin-bottom:30px;border-radius:8px}.service-grid .eyebrow{margin-bottom:12px}.service-grid p{max-width:460px}.peach{background:var(--peach);max-width:none}.cta{background:var(--yellow);padding:75px 6%;text-align:center}.cta h2{max-width:800px;margin:0 auto 25px}.cta .actions{justify-content:center}.page-heading{padding:75px 6% 45px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(3.2rem,6.3vw,6.5rem)}.page-heading .intro{max-width:650px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.round-photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:45% 45% 8px 8px}.price-line{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}.small{font-size:.83rem;color:#5f635f}.narrow{max-width:1000px}.narrow h2{font-size:3rem}.feature-price{background:var(--peach);padding:30px;margin-bottom:50px}.feature-price>span{font-size:1.3rem}.feature-price strong{float:right;font-size:1.7rem}.feature-price p{clear:both;margin:20px 0 0}.steps{padding-left:28px}.steps li{padding:15px 0 15px 15px}.steps li::marker{color:var(--blue);font-size:1.3rem}.steps h3{margin-bottom:12px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:1.15rem;cursor:pointer;font-weight:bold}details p{margin-top:20px}.prices{padding-top:35px;max-width:1200px}.source-note{font-size:.95rem;max-width:900px}.category-nav{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0 60px}.category-nav a{font-size:.8rem;padding:10px 14px;border:1px solid var(--line);border-radius:30px;text-decoration:none}.category-nav a:hover{background:var(--peach)}.price-category{margin:0 0 65px}.price-category h2{font:400 clamp(1.5rem,3vw,2.4rem)/1.2 Georgia,serif;letter-spacing:-.02em;color:var(--blue);border-bottom:2px solid var(--blue);padding-bottom:20px}.service-price{padding:19px 0;border-bottom:1px solid var(--line)}.service-price h3{font-size:1rem;font-weight:500;margin-bottom:8px}.variant{display:flex;gap:25px;justify-content:space-between;font-size:.92rem;padding:3px 0}.variant strong{white-space:nowrap;color:var(--blue);margin-left:auto}.variant span{max-width:75%}address{font-style:normal;font-size:1.25rem;line-height:1.8;margin-bottom:25px}@media(max-width:620px){.section{padding:50px 6%}.service-grid,.split{grid-template-columns:1fr;gap:35px}.page-heading{padding:45px 6% 30px}.cta{padding:50px 6%}.feature-price{padding:20px}.feature-price strong{float:none;display:block}.narrow h2{font-size:2.3rem}.category-nav{margin-bottom:40px}.variant{gap:12px}.variant span{max-width:68%}.prices{padding-top:20px}}

/* Official KIDO artwork: preserve full image and its proportions. */
.logo{display:inline-block;flex-shrink:0;line-height:0}.logo img{display:block;width:170px;height:auto;max-width:100%;object-fit:contain}.footer-top .logo{align-self:flex-start}.footer-top .logo img{width:190px}@media(max-width:620px){.logo img{width:145px}.footer-top .logo img{width:170px}}

/* Digital colours sampled directly from the supplied official KIDO PNG. */
.hero-photo figcaption{background:var(--yellow)}.ribbon{background:var(--coral);color:#151515}.ribbon span[aria-hidden]{color:#151515}.feature-price{background:var(--yellow)}.header nav a[aria-current]{text-decoration-color:var(--coral);text-decoration-thickness:3px}

/* Selected real KIDO photographs and high-contrast footer. */
.hero-photo img{aspect-ratio:3/4;border-radius:18px;object-position:50% 35%}.service-grid img{aspect-ratio:4/5;object-position:50% 28%}.round-photo{aspect-ratio:3/4;border-radius:18px;object-position:50% 25%}.mens-price-photo{width:260px;max-width:100%;height:auto;border-radius:12px;margin:25px 0}.first-visit-photo{padding-bottom:15px}footer{background:var(--blue);color:#fffdf8}.footer-bottom{border-top:1px solid #ffffff40}footer a:hover{color:var(--yellow)}@media(max-width:620px){.hero-photo img{aspect-ratio:3/4}.service-grid img{aspect-ratio:4/5}.round-photo{aspect-ratio:3/4}}
.footer-top .logo{background:transparent;padding:0;border-radius:0}
