
:root{--cream:#eae6e1;--gray:#c4c4c4;--green:#0a1f05;--ink:#0d0303;--max:1320px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"Almarai",Arial,sans-serif;background:var(--cream);font-size:16px}
body.gray{background:var(--gray)}
a{color:inherit}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;z-index:99;background:#fff;padding:10px}
.site-header{height:113px;background:var(--cream);position:relative;z-index:10}
.header-inner{height:100%;max-width:1320px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{font:400 25px/1.15 "Libre Baskerville",serif;text-decoration:none;white-space:nowrap}
.desktop-nav{display:flex;align-items:center;gap:27px;font-size:14px}
.desktop-nav a{text-decoration:none}.desktop-nav a:hover{text-decoration:underline}.book{background:var(--green);color:var(--cream)!important;border-radius:300px;padding:19px 32px;text-decoration:none!important;white-space:nowrap}
.mobile-actions,.mobile-menu{display:none}
h1,h2,h3{font-family:"Libre Baskerville",serif;font-weight:400}
.gray-section{background:var(--gray)}.cream-section{background:var(--cream)}
.contact-home{min-height:1480px;padding:48px max(34px,calc((100vw - 1320px)/2));display:grid;grid-template-columns:1.02fr .98fr;gap:82px;align-items:start}
.contact-copy{max-width:625px}.contact-copy h1{font-size:68px;line-height:1.055;letter-spacing:-.02em;margin:0 0 28px}.contact-copy>p{max-width:560px;line-height:1.5;margin:0 0 18px}
.contact-image{margin:0}.contact-image img{width:100%;height:805px;object-fit:cover;display:block}
.contact-form{margin-top:110px;max-width:560px;display:grid;gap:20px}.contact-form fieldset{border:0;padding:0;margin:0}.contact-form legend,.contact-form label{display:block;font-size:15px}.contact-form small{font-size:13px;color:#4e4e4e;margin-left:6px;font-weight:400}.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-form input,.contact-form textarea{display:block;margin-top:8px;background:transparent;border:1px solid var(--ink);border-radius:300px;padding:11px 16px;font:inherit;color:inherit;width:100%}.contact-form textarea{min-height:96px;border-radius:24px;resize:vertical}.contact-form button{justify-self:start;border:0;border-radius:300px;background:var(--green);color:var(--cream);padding:17px 28px;font:inherit;cursor:pointer}.form-help{display:none;font-size:12px;line-height:1.45!important;margin:0!important}.contact-form.on-dark .form-help{color:var(--cream)}.contact-form.on-dark small{color:#aaa}
.services-main{min-height:1900px;padding:0 max(34px,calc((100vw - 1320px)/2)) 150px}.service-hero{margin:0 0 48px}.service-hero img{display:block;width:100%;height:380px;object-fit:cover}
.services-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.services-intro h1{font-size:38px;line-height:1.02;margin:0}.services-copy p{line-height:1.5;margin:0 0 18px}.services-label{font-size:47px;margin:105px 0 35px}
.live-product-list{display:grid;gap:22px}.live-product{display:grid;grid-template-columns:145px 220px 1fr 140px;gap:20px;align-items:start;text-decoration:none;padding:0 0 20px}.live-product img{width:145px;height:130px;object-fit:cover}.live-product h3{font-size:26px;line-height:1.05;margin:0}.live-product p{font-size:14px;line-height:1.5;margin:0}.live-product span{font-size:13px;padding-top:8px}
.dark-contact{min-height:890px;background:var(--green);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;padding:110px max(34px,calc((100vw - 1320px)/2))}.dark-contact .contact-form{margin:0;max-width:560px}.dark-contact .contact-form input,.dark-contact .contact-form textarea{border-color:#000;color:var(--cream)}.dark-contact .contact-form button{background:var(--cream);color:var(--green)}.dark-contact-spacer{min-height:1px}
.about-main{min-height:1250px;padding:50px max(34px,calc((100vw - 1320px)/2)) 160px;display:grid;grid-template-columns:1fr .8fr;gap:120px;align-items:start}.about-story{max-width:560px}.about-story h1{font-size:50px;margin:0 0 24px}.about-story p{line-height:1.5;margin:0 0 18px}.owner-image{margin:180px 0 0}.owner-image img{display:block;width:330px;max-width:100%;margin:auto}
.gallery-main{min-height:2050px;padding:75px max(34px,calc((100vw - 1320px)/2)) 150px}.gallery-main h1{font-size:47px;line-height:1.08;max-width:1000px;margin:0 0 140px}.faithful-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.faithful-gallery a{overflow:hidden}.faithful-gallery img{display:block;width:100%;aspect-ratio:1.22/1;object-fit:cover}.cream-tail{height:240px;background:var(--cream);border-top:1px solid rgba(13,3,3,.45)}
.team-main{min-height:1550px;padding:65px max(34px,calc((100vw - 1320px)/2)) 160px}.team-main>h1{font-size:47px;line-height:1.08;max-width:1280px;margin:0 0 150px}.team-main>h1 span{text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:3px;text-underline-offset:5px}.team-group{max-width:850px;margin:0 auto 140px}.team-group img{display:block;width:100%;border-radius:12px}.team-main>h2{text-align:center;font-size:47px;margin:0 0 80px}.people-grid{max-width:860px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.people-grid figure{margin:0}.people-grid img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.appointments-main{min-height:1500px;padding:150px max(34px,calc((100vw - 1320px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.appointment-copy h1{font-size:68px;line-height:1.05;margin:0 0 60px}.appointment-copy h2{font:400 18px/1.4 "Almarai",sans-serif;margin:0 0 16px}.appointment-copy p{line-height:1.6;max-width:520px}.appointment-copy img{width:100%;max-width:520px;display:block;margin-top:26px}.acuity-wrap{min-height:900px}.acuity-wrap iframe{background:#fff;display:block}
.policy-main{min-height:1200px;padding:80px max(34px,calc((100vw - 1320px)/2)) 160px}.policy-main>h1{font-size:60px;margin:0 0 80px}.policy-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 80px}.policy-columns h2{font-size:28px}.policy-columns p{line-height:1.6}
.product-page{min-height:1100px;padding:80px max(34px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.product-page img{width:100%;display:block}.product-page h1{font-size:50px;line-height:1.05;margin:0 0 20px}.product-price{font-weight:700;margin-bottom:30px}.product-page p{line-height:1.6}.product-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.product-actions a{border-radius:300px;padding:17px 26px;text-decoration:none}.product-actions .primary{background:var(--green);color:var(--cream)}.product-actions .secondary{border:1px solid var(--ink)}
@media(max-width:1100px){
.site-header{height:56px}.header-inner{padding:0 14px}.brand{font-size:16px;white-space:normal;max-width:220px}.desktop-nav{display:none}.mobile-actions{display:flex;align-items:center;gap:26px}.cart-count{text-decoration:none;font-size:13px}.menu-button{width:30px;height:28px;border:0;background:none;padding:4px 0;display:grid;align-content:center;gap:8px}.menu-button span{display:block;height:1px;background:var(--ink);width:30px}.mobile-menu{position:absolute;top:56px;left:0;right:0;background:var(--cream);padding:24px 20px 30px;display:none;grid-template-columns:1fr;gap:18px;border-top:1px solid rgba(0,0,0,.12)}.mobile-menu.open{display:grid}.mobile-menu a{text-decoration:none}.mobile-menu .book{justify-self:start}
.contact-home{min-height:1750px;display:block;padding:65px 23px}.contact-copy{max-width:none}.contact-copy h1{font-size:47px;line-height:1.05}.contact-copy>p{font-size:15px;line-height:1.6}.contact-form{margin-top:18px;gap:20px}.contact-image{display:none}.name-grid{grid-template-columns:1fr 1fr}.contact-form input{padding:11px 12px}.contact-form textarea{min-height:100px}.form-help{display:block}
.services-main{min-height:1050px;padding:0 15px 100px}.service-hero{margin:0 0 30px}.service-hero img{height:130px}.services-intro{display:block;padding:0 5px}.services-intro h1{font-size:28px;line-height:1.02;margin-bottom:20px}.services-copy{font-size:14px}.services-label{font-size:34px;margin:40px 0 35px}.live-product-list{margin-left:115px;gap:45px}.live-product{display:block;padding:0;position:relative}.live-product img,.live-product p{display:none}.live-product h3{font-size:24px;line-height:1.03;margin:0 0 8px}.live-product span{display:block;font-size:13px}.dark-contact{min-height:620px;display:block;padding:210px 15px 50px}.dark-contact .contact-form{gap:16px}.dark-contact-spacer{display:none}
.about-main{min-height:1180px;display:block;padding:36px 14px 120px}.about-story{max-width:none}.about-story h1{font-size:34px;margin-bottom:28px}.about-story p{font-size:13px;line-height:1.55;margin-bottom:17px}.owner-image{margin:45px auto 0;max-width:260px}.owner-image img{width:100%}.about-main+.dark-contact{padding-top:210px}
.gallery-main{min-height:1380px;padding:30px 14px 90px}.gallery-main h1{font-size:34px;line-height:1.02;margin-bottom:140px;max-width:330px}.faithful-gallery{grid-template-columns:repeat(2,1fr);gap:4px}.faithful-gallery img{aspect-ratio:1.25/1}.cream-tail{height:260px}
.team-main{min-height:1250px;padding:28px 22px 120px}.team-main>h1{font-size:40px;line-height:1.02;margin-bottom:240px}.team-group{margin-bottom:60px}.team-main>h2{font-size:42px;margin-bottom:100px}.people-grid{grid-template-columns:1fr;max-width:260px}.people-grid figure:not(:first-child){display:none}
.appointments-main{min-height:1900px;display:block;padding:65px 23px}.appointment-copy h1{font-size:47px;line-height:1.05;margin-bottom:20px}.appointment-copy h2{font-size:16px;margin:0 0 24px}.appointment-copy p{font-size:16px;line-height:1.55}.appointment-copy img{margin:16px 0 120px}.acuity-wrap{min-height:1100px}.acuity-wrap iframe{min-height:900px}
.policy-main{padding:50px 20px 100px}.policy-main>h1{font-size:42px;margin-bottom:50px}.policy-columns{grid-template-columns:1fr;gap:35px}.policy-columns h2{font-size:24px}
.product-page{display:block;padding:40px 20px 100px}.product-page img{margin-bottom:35px}.product-page h1{font-size:38px}
}
@media(max-width:420px){.brand{max-width:190px}.name-grid{gap:10px}.contact-form label{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
