
:root{
  --green:#173f38;
  --green-2:#214f46;
  --green-3:#2d6659;
  --ivory:#f5f1e8;
  --ivory-2:#ece5d7;
  --paper:#faf8f3;
  --gold:#c7a463;
  --gold-2:#9c7a3f;
  --ink:#14221f;
  --muted:#68756f;
  --line:#ded8cb;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif;line-height:1.85}
a{color:inherit}
.public-header{
  height:92px;display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(20px,5vw,72px);position:sticky;top:0;z-index:100;
  background:rgba(250,248,243,.93);backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(23,63,56,.08)
}
.public-brand{display:flex;align-items:center;gap:13px;text-decoration:none}
.brand-orbit{width:48px;height:48px;border-radius:50%;overflow:hidden;border:1px solid rgba(199,164,99,.7);box-shadow:0 5px 18px #173f3814}
.brand-orbit img{width:100%;height:100%;object-fit:cover}
.brand-copy{display:flex;flex-direction:column;line-height:1.1}
.brand-copy b{font-family:Georgia,serif;letter-spacing:2.2px;font-size:15px;color:var(--green)}
.brand-copy small{font-size:8px;letter-spacing:2.4px;color:var(--gold-2);margin-top:6px}
.public-nav{display:flex;align-items:center;gap:18px}
.public-nav a{text-decoration:none;font-size:12px;color:#31433e}
.public-nav a:hover{color:var(--gold-2)}
.nav-book{background:var(--green);color:white!important;padding:9px 16px;border-radius:999px}
.nav-staff{color:#897653!important}
.public-menu-toggle{display:none;border:0;background:none;color:var(--green);font-size:25px}

.lux-hero{
  min-height:760px;background:var(--green);color:white;
  display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden;
  position:relative
}
.lux-hero:before{
  content:"FACE ART";position:absolute;left:-30px;bottom:-60px;
  font-family:Georgia,serif;font-size:180px;letter-spacing:8px;color:#ffffff05;
  white-space:nowrap;pointer-events:none
}
.hero-panel{padding:110px clamp(26px,7vw,110px) 80px;align-self:center;position:relative;z-index:2}
.hero-kicker,.section-label{font-size:10px;letter-spacing:3px;font-weight:700;color:var(--gold)}
.hero-panel h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(48px,5.8vw,84px);line-height:1.35;margin:20px 0 24px;letter-spacing:-1.2px}
.hero-panel h1 span{color:#d9c28f}
.hero-lead{max-width:650px;color:#dce4e1;font-size:17px;line-height:2.1}
.hero-cta{display:flex;gap:12px;margin:34px 0}
.lux-btn{display:inline-block;text-decoration:none;padding:12px 22px;border-radius:2px;font-size:13px;font-weight:700;transition:.2s}
.lux-btn.primary{background:var(--gold);color:#173128;border:1px solid var(--gold)}
.lux-btn.primary:hover{background:#d5b778;transform:translateY(-2px)}
.lux-btn.secondary{border:1px solid #ffffff50;color:#fff}
.hero-signature{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:2px;color:#b9c8c3;margin-top:45px}
.hero-signature i{width:55px;height:1px;background:#c6a36188}
.hero-visual{position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#204b43,#0f2924)}
.hero-visual:after{content:"";position:absolute;inset:9% 8%;border:1px solid #d2b16f38;border-radius:50% 50% 12% 12%}
.hero-glow{position:absolute;width:65%;aspect-ratio:1;border-radius:50%;background:#d2ac5e1f;filter:blur(40px)}
.hero-visual>img{width:min(72%,520px);border-radius:50%;position:relative;z-index:2;box-shadow:0 30px 80px #0005;border:1px solid #d8b56d}
.floating-card{position:absolute;z-index:3;background:rgba(246,242,232,.94);color:var(--green);padding:12px 15px;min-width:135px;box-shadow:0 15px 40px #0002}
.floating-card b{display:block;font-family:Georgia,serif;font-size:17px}.floating-card small{font-size:9px;letter-spacing:1px;color:#7b6a4b}
.floating-card.one{right:8%;top:20%}.floating-card.two{left:8%;bottom:16%}

.editorial-intro{max-width:1220px;margin:auto;padding:110px 28px;display:grid;grid-template-columns:90px 1.15fr .85fr;gap:45px;align-items:start}
.intro-number{font-family:Georgia,serif;font-size:54px;color:#c5b28d}
.editorial-intro h2,.lux-section h2,.booking-banner h2{font-family:Georgia,serif;font-size:clamp(38px,4vw,58px);font-weight:400;line-height:1.45;margin:12px 0}
.editorial-intro>p{color:var(--muted);font-size:16px;margin-top:28px}
.signature-strip{background:var(--ivory-2);padding:18px 20px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;color:#5c6b65;font-size:12px;letter-spacing:.5px}
.signature-strip i{width:5px;height:5px;border-radius:50%;background:var(--gold)}

.lux-section{max-width:1220px;margin:auto;padding:95px 28px}
.lux-section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}
.lux-section-head a{text-decoration:none;color:var(--gold-2);font-size:12px}
.lux-service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-right:1px solid var(--line)}
.lux-service-card{min-height:290px;text-decoration:none;border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 24px;position:relative;background:#fff;transition:.25s}
.lux-service-card:hover{background:var(--green);color:#fff;transform:translateY(-4px);z-index:1}
.lux-service-card .index{font-family:Georgia,serif;color:var(--gold);font-size:13px}
.service-line{width:34px;height:1px;background:var(--gold);margin:32px 0}
.lux-service-card h3{font-size:22px;margin:0 0 10px}.lux-service-card p{font-size:13px;color:var(--muted);transition:.25s}
.lux-service-card:hover p{color:#cbd7d3}
.service-link{position:absolute;bottom:25px;right:24px;font-size:11px;color:var(--gold)}
.lux-empty{grid-column:1/-1;padding:30px;color:var(--muted)}

.manifesto{background:#102a25;color:white;display:grid;grid-template-columns:.85fr 1.15fr;min-height:640px}
.manifesto-logo{display:grid;place-items:center;background:linear-gradient(135deg,#183a34,#0f2521);padding:60px}
.manifesto-logo img{width:min(70%,430px);border-radius:50%;border:1px solid #c8a65f;box-shadow:0 25px 80px #0005}
.manifesto-copy{padding:95px clamp(30px,7vw,100px);align-self:center}
.section-label.light{color:#cfb06d}
.manifesto-copy h2{font-family:Georgia,serif;font-size:70px;font-weight:400;color:#dec68d;margin:10px 0 22px}
.manifesto-copy p{color:#c5d1cd;font-size:17px;max-width:650px}
.text-link-light{display:inline-block;margin-top:22px;color:#d5b873;text-decoration:none;font-size:12px}

.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.journey-card{background:#fff;border:1px solid var(--line);padding:26px;min-height:210px}
.journey-card span{font-family:Georgia,serif;color:var(--gold);font-size:13px}.journey-card h3{margin:38px 0 7px;font-size:19px}.journey-card p{font-size:13px;color:var(--muted)}

.feature-band{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ivory-2)}
.feature-panel{min-height:330px;padding:55px 45px;text-decoration:none;border-left:1px solid #d4ccbc;transition:.25s}
.feature-panel:hover{background:#fff}
.feature-panel span{font-size:9px;letter-spacing:2px;color:var(--gold-2)}
.feature-panel h3{font-family:Georgia,serif;font-weight:400;font-size:31px;margin:70px 0 12px}.feature-panel p{color:var(--muted);font-size:13px}

.booking-banner{background:var(--green);color:#fff;padding:75px max(28px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px}
.booking-banner h2{margin:8px 0;color:#fff}.light-btn{white-space:nowrap}

.page-hero{max-width:1200px;margin:auto;padding:95px 28px 45px}.page-hero h1{font-family:Georgia,serif;font-weight:400;font-size:60px;margin:14px 0}.page-hero p{color:var(--muted);max-width:650px}
.booking-shell{max-width:800px;margin:auto;padding:20px 20px 100px}.booking-card{background:#fff;border:1px solid var(--line);padding:34px;box-shadow:0 24px 70px #173f380a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1/-1}.form-grid label{font-size:12px;font-weight:700;color:#3d514b}
input,select{width:100%;margin-top:7px;padding:13px 12px;border:1px solid #d8d2c5;background:#fbfaf6;border-radius:2px;font:inherit;color:var(--ink)}
.booking-note{font-size:12px;color:var(--muted);background:#f0ece3;padding:12px;margin:22px 0}
.wide{width:100%;text-align:center;border:0;cursor:pointer;font:inherit}
.success-page{min-height:65vh;max-width:700px;margin:auto;text-align:center;padding:100px 24px}.success-page h1{font-family:Georgia,serif;font-size:43px;font-weight:400}.success-page p{color:var(--muted)}
.success-icon{width:70px;height:70px;border:1px solid #b99a5d;border-radius:50%;display:grid;place-items:center;margin:auto;color:var(--green);font-size:30px}.status-pill{display:inline-block;background:#ece6da;color:#82693b;padding:7px 14px;margin:12px 0 25px}
.aftercare-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.aftercare-grid article{background:#fff;border:1px solid var(--line);padding:30px}.aftercare-grid article p{color:var(--muted)}
.gallery-placeholder{height:420px;border:1px dashed #b8ad99;background:#f0ece3;display:grid;place-items:center;text-align:center;padding:30px}.gallery-placeholder>div{max-width:520px}

.flash-wrap{position:fixed;top:105px;left:50%;transform:translateX(-50%);z-index:300;width:min(92%,600px)}.flash{background:#fff;padding:12px 16px;border:1px solid var(--line);box-shadow:0 12px 35px #0001}.flash.error{color:#a23d3d;border-color:#daa6a6}

.public-footer{background:#0c201c;color:#e4e9e6;padding:60px max(25px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1fr 1fr;gap:30px}
.footer-brand span{font-size:10px;letter-spacing:3px;color:var(--gold)}.footer-brand h3{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:5px 0}.footer-brand p{color:#96a7a1;font-size:12px}
.footer-links{display:flex;gap:20px;justify-content:flex-end;align-items:center}.footer-links a{text-decoration:none;color:#c5d0cc;font-size:12px}
.public-footer small{grid-column:1/-1;border-top:1px solid #ffffff12;padding-top:18px;color:#70817b}

@media(max-width:980px){
  .public-nav{display:none;position:absolute;top:92px;right:0;left:0;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}
  body.public-menu-open .public-nav{display:flex}
  .public-menu-toggle{display:block}
  .lux-hero{grid-template-columns:1fr}
  .hero-visual{min-height:520px}
  .editorial-intro{grid-template-columns:70px 1fr}.editorial-intro>p{grid-column:2}
  .lux-service-grid{grid-template-columns:repeat(2,1fr)}
  .journey-grid{grid-template-columns:repeat(2,1fr)}
  .manifesto{grid-template-columns:1fr}.manifesto-logo{min-height:460px}
  .feature-band{grid-template-columns:1fr}
}
@media(max-width:600px){
  .public-header{height:80px;padding:0 16px}.public-nav{top:80px}
  .brand-copy small{display:none}
  .lux-hero{min-height:auto}.hero-panel{padding:70px 22px 55px}.hero-panel h1{font-size:47px}
  .hero-cta{flex-direction:column}.hero-signature{flex-wrap:wrap}
  .hero-visual{min-height:430px}.hero-visual>img{width:68%}.floating-card.one{right:4%;top:12%}.floating-card.two{left:4%;bottom:10%}
  .editorial-intro{padding:70px 20px;grid-template-columns:1fr}.intro-number{font-size:38px}.editorial-intro>p{grid-column:auto}
  .lux-section{padding:70px 18px}.lux-section-head{align-items:flex-start;gap:15px}
  .lux-service-grid{grid-template-columns:1fr}
  .manifesto-logo{min-height:360px;padding:35px}.manifesto-copy{padding:65px 22px}.manifesto-copy h2{font-size:54px}
  .journey-grid{grid-template-columns:1fr}
  .booking-banner{padding:55px 20px;flex-direction:column;align-items:flex-start}
  .form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}
  .feature-panel{min-height:260px;padding:40px 25px}.feature-panel h3{margin-top:45px}
  .public-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start;flex-wrap:wrap}
}

/* Approved home — 2026-09-19. Keep the supplied artwork unchanged. */
body.home-approved{margin:0;background:#063f34;overflow-x:hidden}
body.home-approved main{margin:0;padding:0}
.approved-home{position:relative;min-height:100vh;background:#063f34}
.approved-home-frame{position:relative;width:min(100%,1024px);margin:0 auto;line-height:0}
.approved-home-image{display:block;width:100%;height:auto;margin:0;padding:0}
.approved-menu-hotspot{position:absolute;z-index:20;left:2.2%;top:2.6%;width:8.5%;height:6.2%;border:0;background:transparent;cursor:pointer;padding:0}
.approved-menu-hotspot:focus-visible{outline:2px solid #d5b46f;outline-offset:3px;border-radius:6px}
.approved-menu-backdrop{position:fixed;inset:0;z-index:998;background:rgba(0,0,0,.48);opacity:0;transition:opacity .22s ease}
.approved-menu-backdrop.show{opacity:1}
.approved-drawer{position:fixed;z-index:999;top:0;left:0;width:min(84vw,390px);height:100dvh;background:#f6f1e7;color:#123e36;transform:translateX(-105%);transition:transform .28s ease;box-shadow:12px 0 50px rgba(0,0,0,.22);padding:26px 24px 34px;direction:rtl;overflow:auto}
.approved-drawer.open{transform:translateX(0)}
.approved-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(18,62,54,.15);direction:ltr}
.approved-drawer-head span{font-family:Georgia,"Times New Roman",serif;letter-spacing:1.4px;font-size:15px;color:#17483f}
.approved-drawer-head button{border:0;background:none;color:#17483f;font-size:36px;line-height:1;cursor:pointer}
.approved-drawer nav{display:flex;flex-direction:column;padding-top:16px}
.approved-drawer nav a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:#153f37;font-size:17px;font-weight:700;padding:15px 3px;border-bottom:1px solid rgba(18,62,54,.11)}
.approved-drawer nav a span{color:#bd9652;font-weight:400}
.approved-drawer nav a.staff-link{margin-top:20px;border:1px solid #c5a05d;padding:12px 14px}
@media(min-width:1025px){.approved-home{padding:0 calc((100vw - 1024px)/2)}.approved-home-frame{box-shadow:0 0 80px rgba(0,0,0,.16)}}
/* Home direct navigation — no hamburger/search controls */
.hide-art-icon{position:absolute;z-index:5;background:#0b493e;pointer-events:none}
.hide-menu-icon{left:2.1%;top:2.4%;width:8.5%;height:5.8%}
.hide-search-icon{right:1.7%;top:2.2%;width:7.2%;height:6%}
.home-action-panel{position:absolute;z-index:12;left:4.5%;right:4.5%;bottom:7.8%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;direction:rtl}
.home-action-panel a{min-height:78px;padding:12px 14px;text-decoration:none;background:rgba(7,55,47,.88);border:1px solid rgba(213,180,111,.72);backdrop-filter:blur(7px);color:#fff;display:flex;flex-direction:column;justify-content:center;text-align:right;border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,.12)}
.home-action-panel b{font-size:16px;color:#f4ead7}.home-action-panel small{font-size:10px;color:#d6deda;margin-top:3px;line-height:1.5}.home-action-panel a:hover{transform:translateY(-2px);background:rgba(15,79,68,.95)}
.home-staff-entry{position:absolute;z-index:13;right:4.5%;bottom:2.8%;font-size:10px;letter-spacing:.5px;color:#d7c18f;text-decoration:none;opacity:.9}
.editable-public-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.editable-public-card{background:#fff;border:1px solid var(--line);overflow:hidden}.editable-public-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.editable-public-card div{padding:22px}.editable-public-card h3{margin:0 0 8px}.editable-public-card p{color:var(--muted);font-size:13px}
@media(max-width:700px){.home-action-panel{grid-template-columns:repeat(2,1fr);gap:7px;bottom:7.5%}.home-action-panel a{min-height:65px;padding:8px 10px}.home-action-panel b{font-size:13px}.home-action-panel small{font-size:8px}.editable-public-grid{grid-template-columns:1fr}.hide-menu-icon{background:#0a493e}.hide-search-icon{background:#0a493e}}

/* HOME V3 — original approved artwork cropped only; no AI/image alteration */
body.home-v3{background:#073f35}
body.home-v3 main{padding:0;margin:0}
.home-v3-shell{width:min(100%,1024px);margin:0 auto;background:#073f35;min-height:100vh;box-shadow:0 0 70px rgba(0,0,0,.14)}
.home-brand-banner{min-height:142px;padding:24px 22px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% -70%,#27695a 0,#0d5145 34%,#073f35 72%);border-bottom:1px solid rgba(207,174,105,.45);position:relative;overflow:hidden}
.home-brand-banner:before,.home-brand-banner:after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(205,169,96,.10);border-radius:50%}
.home-brand-banner:before{left:-155px;top:-135px}.home-brand-banner:after{right:-160px;bottom:-160px}
.home-brand-name{font-family:Georgia,"Times New Roman",serif;color:#e3c47e;font-size:clamp(28px,5vw,47px);line-height:1.15;letter-spacing:.4px;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.home-brand-sub{color:#ead9ad;font-size:clamp(9px,1.7vw,14px);letter-spacing:5px;margin-top:8px;text-align:center}
.brand-gold-line{width:72px;height:1px;background:linear-gradient(90deg,transparent,#d4b26a,transparent);margin:7px 0}
.home-v3-actions{direction:rtl;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(210,176,105,.32);border-bottom:1px solid rgba(210,176,105,.4)}
.home-v3-actions a{min-height:116px;background:#0b493e;text-decoration:none;color:#fff;padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.2s}
.home-v3-actions a:hover{background:#14584b}.home-v3-actions a.action-primary{background:#b58c48}.home-v3-actions a.action-primary b,.home-v3-actions a.action-primary small,.home-v3-actions a.action-primary .action-icon{color:#fff}
.home-v3-actions .action-icon{color:#d6b66f;font-size:22px;line-height:1;margin-bottom:8px}.home-v3-actions b{font-size:17px;color:#f8f3e8;line-height:1.3}.home-v3-actions small{font-size:10px;color:#bdcbc7;line-height:1.5;margin-top:5px}
.home-v3-art{line-height:0;background:#073f35}.home-v3-art img{display:block;width:100%;height:auto;margin:0}
.home-v3-staff{text-align:center;padding:18px;background:#073f35;border-top:1px solid rgba(210,176,105,.25)}.home-v3-staff a{color:#cdb174;font-size:11px;text-decoration:none;letter-spacing:.5px}
@media(max-width:600px){
 .home-brand-banner{min-height:116px;padding:18px 12px 15px}.home-brand-name{font-size:30px}.home-brand-sub{font-size:9px;letter-spacing:3.6px;margin-top:6px}
 .home-v3-actions{grid-template-columns:repeat(2,1fr)}.home-v3-actions a{min-height:88px;padding:11px 7px}.home-v3-actions .action-icon{font-size:18px;margin-bottom:5px}.home-v3-actions b{font-size:14px}.home-v3-actions small{font-size:8.5px}
}
