/* Readable type and portrait layout, September 2026. */
@font-face{font-family:'Cormorant Local';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/cormorant-garamond-600.ttf') format('truetype')}
.price-card>span{color:#e1c7b7!important;letter-spacing:.03em!important;text-transform:none!important}.promotion-note{font-size:19px;line-height:1.6;color:#f0d19b;margin:20px 0 0}.booking .booking-form .success p{font-size:19px}.booking .booking-form .email-fallback{color:#633b20}
body{font-size:18px;line-height:1.6}h1,h2,h3,p{overflow-wrap:break-word}h2{line-height:1.16}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}section[id]{scroll-margin-top:105px}
.topline{font-size:13px;letter-spacing:0;padding-block:8px}.site-header{height:auto;min-height:88px;gap:24px}.site-header nav{font-size:16px;gap:24px}.brand-type small{font-size:12px}.eyebrow,.availability{font-size:14px;letter-spacing:.08em}.hero{gap:60px;grid-template-columns:1.12fr .88fr;padding-top:65px;padding-bottom:75px;min-height:760px}.hero h1{font-size:clamp(56px,5.8vw,82px);line-height:1.06;letter-spacing:-.045em;margin-block:16px 24px}.personal-intro{font-size:23px;color:#f4e9df;line-height:1.5;margin:22px 0 12px}.hero-text{font-size:20px;line-height:1.7;color:#e2cfc3;margin:20px 0 28px;max-width:48ch}.hero-actions{flex-wrap:wrap;gap:20px}.button,.nav-cta{font-size:17px;min-height:52px;line-height:1.4;padding:17px 24px;letter-spacing:0;text-transform:none}.text-link{font-size:17px;line-height:1.5}.hero-price{flex-wrap:wrap;gap:10px}.hero-price strong{font-size:38px}.hero-price span,.trust-line{font-size:15px;text-transform:none;letter-spacing:0;color:#dbc4b6}.trust-line{flex-wrap:wrap;gap:12px}.portrait-hero{position:relative;align-self:center;margin:0;max-width:460px;width:100%;justify-self:end;background:#1f1a18;box-shadow:18px 18px 0 #b4834838}.portrait-hero img{display:block;width:100%;height:auto;aspect-ratio:702/1100;object-fit:cover;object-position:50% 38%}.portrait-hero figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#211611f2);padding:70px 26px 24px;color:#fff5eb;display:grid;gap:3px}.portrait-hero figcaption strong{font:500 36px/1.2 Georgia,serif}.portrait-hero figcaption span{font-size:16px;line-height:1.5;max-width:28ch}.reading-proof>p{font-size:16px;color:#d8c1b4}.reading-proof span{font-size:16px;line-height:1.55;color:#d3bbae}.reading-proof b{font-size:28px}.questions{padding-block:85px 90px}.questions .question-grid{grid-template-columns:1fr 1fr;gap:20px}.questions .question-card{padding:28px 30px;min-height:0;display:flex;align-items:center;box-shadow:none;border:1px solid #9a715f55!important}.questions .question-card:before,.questions .question-card:after{display:none;content:none}.questions .question-card p{margin:0;max-width:34ch;font-family:Arial,sans-serif;font-size:26px;line-height:1.5;font-weight:400;color:#3d2922}.questions-note{font-family:Arial,sans-serif;font-style:normal;font-size:22px;line-height:1.65;color:#51392f;max-width:65ch;margin:32px auto 0}.about{gap:70px}.about-copy>p:not(.eyebrow){font-size:20px;line-height:1.75;color:#dfc9bb}.steps span{font-size:19px;line-height:1.65;color:#d8c0b1}.steps b{font-size:21px;margin-bottom:8px}.steps strong{font-size:24px}.about-manifesto>span{font-size:15px}.about-manifesto i{font-size:18px}.about-manifesto blockquote{font-size:32px;line-height:1.4}.reviews-preview{padding:80px max(28px,calc((100vw - 1136px)/2));display:grid;grid-template-columns:1fr 1fr;gap:65px;background:#d9c6ba;color:#3b2721}.reviews-preview .eyebrow{color:#754c30}.reviews-preview h2{color:#3b2721;font-size:42px}.reviews-preview p:not(.eyebrow){font-size:21px;line-height:1.7;margin-top:0}.reviews-preview .text-link{color:#69411e;border-color:#906541}
.booking{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:48px;padding-inline:max(26px,calc((100vw - 1260px)/2));padding-block:95px}.booking h2{font-size:clamp(38px,4vw,52px)}.booking-intro>p:not(.eyebrow){font-size:21px;color:#ead7ca;line-height:1.7}.price-card>span{font-size:18px}.price-card strong{font-size:56px}.price-card small{font-size:18px;line-height:1.6;color:#e1c7b7}.offer-invitation{margin-top:28px}.offer-invitation h3{font:500 28px/1.35 Georgia,serif;color:#f1d2a0}.offer-invitation p{font-size:19px;line-height:1.7;color:#e1cabc}.privacy-note{font-size:17px;line-height:1.7;color:#d7beb0}.booking-form{padding:34px;min-width:0}.booking-form label,.booking-form legend{font-size:19px;line-height:1.5;letter-spacing:0;text-transform:none;color:#493128}.booking-form input,.booking-form select,.booking-form textarea{font-size:20px;line-height:1.5;min-height:54px;padding:12px 10px;background:#f4e9e070;border:1px solid #98735f;border-radius:4px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#775c50;opacity:1}.booking-form textarea{min-height:155px}.booking-form fieldset{margin-block:28px}.form-row{grid-template-columns:1fr;gap:22px}.birth-grid{grid-template-columns:1fr 1.3fr;gap:18px}.booking-form input:focus-visible,.booking-form select:focus-visible,.booking-form textarea:focus-visible{outline:3px solid #845123;outline-offset:3px}.checkbox,.consent{align-items:flex-start;gap:12px;color:#4e352b!important;font-size:18px!important;line-height:1.65!important}.booking-form .checkbox input,.booking-form .consent input{flex:0 0 23px;width:23px;height:23px;min-height:23px;margin-top:4px;padding:0;accent-color:#805023}.booking-form .consent a{color:#5e3619;text-decoration:underline;text-underline-offset:3px}.booking-form .field-note{display:block;font-size:17px;line-height:1.6;font-weight:400;color:#61463a;margin-top:12px}.delivery-button b,.format-button b{font-size:19px}.delivery-button>span{font-size:19px}.format-options{grid-template-columns:1fr}.format-button small{font-size:17px;color:#60473b;line-height:1.55}.format-button:focus-within,.delivery-button:focus-within{outline:3px solid #845123;outline-offset:3px}.format-button input,.delivery-button input{width:1px!important;height:1px!important;min-height:0!important;padding:0!important}.booking-form .submit{font-size:21px;width:100%;margin-top:12px;white-space:normal}.booking-form .honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;min-height:0!important}.success h3{font-size:34px}.success p,.payment-details dt,.payment-details dd,.payment-details small,.payment-details>span,.email-fallback,.form-error{font-size:18px;line-height:1.65}.success .payment-details>strong{font-size:40px}.form-error{color:#6c2217}
footer{font-size:16px;flex-wrap:wrap;gap:22px;line-height:1.6}footer a{overflow-wrap:anywhere}.cookie-settings{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:4px}.legal-heading h1{font-size:clamp(32px,5vw,64px);line-height:1.18;letter-spacing:-.025em}.legal-heading>p:last-child{font-size:17px}.legal-document section{grid-template-columns:1fr;gap:18px;padding:30px 0}.legal-document section>p,.legal-document section>ul,.legal-document section>ol{grid-column:1;font-size:20px;line-height:1.8;color:#e2cfc3;max-width:70ch}.legal-document section h2{font-size:28px;line-height:1.4}.inner-header{gap:20px}.inner-header>a{font-size:17px}.cookie-banner{position:fixed;inset:auto 18px 18px;z-index:30;max-width:850px;margin-inline:auto;background:#f3e8df;color:#39271f;padding:22px 26px;border:1px solid #ad8767;box-shadow:0 12px 60px #1b0e0b55;border-radius:8px}.cookie-banner[hidden]{display:none}.cookie-banner h2{font:600 22px/1.4 Arial,sans-serif;color:#39271f;margin:0 0 8px}.cookie-banner p{font-size:16px;line-height:1.55;margin:0 0 15px}.cookie-banner a{color:#643815;text-decoration:underline}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px}.cookie-actions button{font:500 16px/1.5 Arial,sans-serif;padding:10px 14px;border:1px solid #8f6549;border-radius:4px;background:#fff8f2;color:#452b1e;min-height:44px}.cookie-actions button:first-child{background:#65432d;color:#fff8ee}.cookie-actions button:hover{filter:brightness(.94)}
@media(max-width:1000px){.hero{gap:35px}.booking{grid-template-columns:1fr;max-width:none}.booking-intro{position:static}.booking-form{max-width:820px;width:100%;justify-self:center}.about{gap:45px}.hero h1{font-size:62px}}
@media(max-width:900px){.hero{grid-template-columns:1fr;background:#35231e}.hero-copy{max-width:680px}.portrait-hero{justify-self:center;max-width:440px}.reviews-preview{grid-template-columns:1fr;gap:25px}.site-header nav{font-size:18px}.about{grid-template-columns:1fr}.reading-proof span{font-size:16px}}
@media(max-width:600px){.site-header{padding:16px 20px}.brand-type{font-size:22px}.topline{font-size:12px;padding-inline:14px}.hero{padding:38px 22px 55px}.hero h1{font-size:55px}.personal-intro{font-size:21px}.hero-text{font-size:19px}.portrait-hero{max-width:350px;box-shadow:10px 10px 0 #b4834838}.questions{padding:60px 22px}.questions .question-grid{grid-template-columns:1fr;gap:14px}.questions .question-card{padding:23px 22px}.questions .question-card p{font-size:23px}.questions-note{font-size:20px}.section-heading h2{font-size:36px}.reading-proof div{gap:20px}.reading-proof b{font-size:26px}.about{padding:65px 22px}.about-manifesto{min-height:0;padding:28px;max-width:100%;margin-right:12px}.about-manifesto blockquote{margin:26px 0;font-size:28px}.about-copy>p:not(.eyebrow),.steps span{font-size:19px}.reviews-preview{padding:55px 22px}.reviews-preview h2{font-size:34px}.reviews-preview p:not(.eyebrow){font-size:19px}.booking{padding:60px 16px;gap:30px}.booking h2{font-size:38px}.booking-form{padding:25px 18px}.booking-form label,.booking-form legend{font-size:18px}.booking-form input,.booking-form select,.booking-form textarea{font-size:19px;min-width:0}.birth-grid{gap:14px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.delivery-options{grid-template-columns:1fr}.delivery-button{flex-direction:row;min-height:60px!important;gap:15px}.format-button{padding:14px!important;gap:10px}.delivery-fieldset,.format-fieldset{padding:14px!important}.consent{font-size:17px!important}.booking-form .submit{font-size:19px}.legal-document{padding:50px 22px}.legal-document section>p,.legal-document section>ul{font-size:18px}.inner-header{flex-wrap:wrap;padding:20px}.cookie-banner{inset:auto 10px 10px;padding:16px;max-height:70dvh;overflow:auto}.cookie-banner p,.cookie-actions button{font-size:15px}.cookie-actions button{flex:1 1 auto}.cookie-actions{gap:8px}footer{padding:35px 22px}.hero-actions .button{max-width:100%}}

/* One warm canvas: a large natal wheel surrounds the portrait. */
.hero{background:#2d1d19;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;padding-inline:max(28px,calc((100vw - 1220px)/2));padding-top:54px;padding-bottom:65px}
.hero:before{background:radial-gradient(ellipse at 77% 49%,#bd864016,transparent 50%);opacity:1}
.hero h1,h2,.brand-type,.inner-header .brand,.about-manifesto blockquote,.offer-invitation h3,.legal-heading h1,.hero-visual figcaption strong{font-family:'Cormorant Local',Georgia,serif;font-weight:600}
.hero h1{font-size:clamp(70px,7.6vw,104px);line-height:.94;letter-spacing:-.035em;margin-block:20px 28px}
.hero h1 em{font-style:normal;letter-spacing:-.025em;margin-left:28px}
.section-heading h2{font-size:clamp(40px,5.2vw,64px)}
.about-copy h2{font-size:clamp(40px,4.6vw,58px)}
.about-manifesto blockquote{font-size:38px;line-height:1.3}
.hero-visual{position:relative;isolation:isolate;width:100%;max-width:630px;height:650px;justify-self:center;align-self:center}
.hero-chart{position:absolute;left:-17%;top:-2%;width:125%;margin:0;z-index:1;mix-blend-mode:lighten}
.hero-chart img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;mix-blend-mode:normal;filter:saturate(.88);mask-image:radial-gradient(ellipse at center,#000 0 56%,#000d 66%,transparent 76%)}
.hero-chart figcaption{position:absolute;bottom:2%;left:15%;color:#ebc78b;font:600 25px/1.3 'Cormorant Local',Georgia,serif;margin:0;letter-spacing:.03em}
.hero-visual .portrait-hero{position:absolute;top:17%;right:1%;width:52%;max-width:310px;z-index:2;background:transparent;box-shadow:none;margin:0}
.hero-visual .portrait-hero img{aspect-ratio:.72;width:100%;height:auto;object-fit:cover;object-position:50% 36%;transform:scaleX(-1);border-radius:48% 48% 4% 4%;mask-image:linear-gradient(to bottom,#000 0 73%,#000c 85%,transparent 100%)}
.hero-visual .portrait-hero figcaption{position:relative;margin-top:-45px;padding:8px 10px 0;background:transparent;display:grid;gap:5px;text-align:center}
.hero-visual .portrait-hero figcaption strong{font-size:38px;color:#f4d69e}
.hero-visual .portrait-hero figcaption span{font-size:15px;line-height:1.55;color:#e3c9b9;max-width:24ch;margin:auto}
@media(max-width:1000px) and (min-width:901px){.hero-visual{height:560px}.hero-chart{top:5%;width:130%;left:-20%}.hero-visual .portrait-hero{top:22%;width:56%}.hero h1{font-size:76px}}
@media(max-width:900px){.hero{grid-template-columns:1fr;background:#2d1d19;gap:15px}.hero-visual{max-width:570px;height:620px}.hero-chart{width:120%;left:-13%;top:0}.hero-visual .portrait-hero{top:17%;right:3%;width:51%}}
@media(max-width:600px){.hero{padding:36px 22px 45px;gap:12px}.hero h1{font-size:74px;line-height:.98}.hero h1 em{margin-left:10px}.hero-visual{max-width:370px;height:430px;margin-top:14px}.hero-chart{width:128%;left:-17%;top:-1%}.hero-chart figcaption{font-size:21px;left:15%;bottom:1%}.hero-visual .portrait-hero{top:16%;right:0;width:55%;max-width:210px;box-shadow:none}.hero-visual .portrait-hero figcaption{padding:5px 0 0;margin-top:-30px}.hero-visual .portrait-hero figcaption strong{font-size:30px}.hero-visual .portrait-hero figcaption span{font-size:13px}.section-heading h2{font-size:43px}.about-copy h2{font-size:43px}.about-manifesto blockquote{font-size:32px}}
@media(max-width:360px){.hero h1{font-size:65px}.hero-visual{height:390px}}

/* Enlarge the wheel uniformly, without changing the portrait dimensions. */
.hero-chart{width:138%;left:-23%;top:-7%}
.hero-chart img{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain;transform:none}
@media(max-width:1000px) and (min-width:901px){.hero-chart{width:142%;left:-26%;top:0}}
@media(max-width:900px){.hero-chart{width:132%;left:-19%;top:-5%}}
@media(max-width:600px){.hero-chart{width:140%;left:-23%;top:-5%}}

/* Show the complete portrait without cropping the head. */
.hero-visual .portrait-hero img{aspect-ratio:702 / 1270;object-fit:contain;object-position:center top;border-radius:0;mask-image:linear-gradient(to bottom,#000 0 78%,#000c 88%,transparent 100%)}

/* Full circular backdrop with a portrait in its lower-right quadrant. */
.hero{isolation:isolate;min-height:980px;overflow:hidden}
.hero-copy{z-index:3}
.hero-visual{position:static;isolation:auto;height:760px;max-width:none;z-index:auto}
.hero-chart{position:absolute;width:min(76vw,980px);height:auto;aspect-ratio:1;top:15px;left:auto;right:-18px;z-index:0;mix-blend-mode:lighten}
.hero-chart img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:contain;transform:none}
.hero-chart figcaption{left:40%;bottom:3%;font-size:23px}
.hero-visual .portrait-hero{position:absolute;width:245px;max-width:245px;top:auto;bottom:45px;right:6%;z-index:2}
.hero-visual .portrait-hero img{aspect-ratio:702 / 1270;object-fit:contain;object-position:center top;border-radius:0}
.hero-visual .portrait-hero figcaption strong{font-size:32px}
.hero-visual .portrait-hero figcaption span{font-size:14px}
@media(min-width:901px){.hero-copy{align-self:start;margin-top:48px}.hero-text,.personal-intro{text-shadow:0 2px 8px #2d1d19,0 0 18px #2d1d19}.hero-chart{opacity:.88}}
@media(max-width:1000px) and (min-width:901px){.hero{min-height:940px}.hero-chart{width:850px;right:-85px;top:15px}.hero-visual .portrait-hero{width:220px;max-width:220px;right:4%;bottom:55px}}
@media(max-width:900px){.hero{min-height:0;gap:0}.hero-visual{position:relative;isolation:isolate;width:100%;max-width:640px;height:650px;margin-top:-80px}.hero-chart{width:110%;left:-5%;right:auto;top:0;opacity:1}.hero-visual .portrait-hero{width:230px;max-width:230px;right:4%;bottom:0}.hero-copy{z-index:3}.hero-chart figcaption{left:19%;bottom:4%}}
@media(max-width:600px){.hero-visual{height:430px;max-width:380px;margin-top:-28px}.hero-chart{width:116%;left:-8%;right:auto;top:0}.hero-visual .portrait-hero{width:145px;max-width:145px;right:0;bottom:-4px}.hero-visual .portrait-hero figcaption{margin-top:-27px}.hero-visual .portrait-hero figcaption strong{font-size:26px}.hero-visual .portrait-hero figcaption span{font-size:12px}.hero-chart figcaption{font-size:18px;left:13%;bottom:2%}}
@media(min-width:1001px){.hero-chart{width:min(74vw,960px);right:12px;top:12px}}
@media(max-width:1000px) and (min-width:901px){.hero-chart{width:850px;right:0;top:12px}}

/* Separate the portrait from the wheel caption and soften backdrop edges. */
.hero-chart{right:150px}
.hero-visual .portrait-hero{width:190px;max-width:190px;right:18px;bottom:165px;background:#2d1d19}
.hero-visual .portrait-hero img{mask-image:linear-gradient(to bottom,transparent 0%,#000 5% 78%,#000c 88%,transparent 100%);background:#2d1d19}
.hero-visual .portrait-hero figcaption{background:#2d1d19}
.hero-visual .portrait-hero figcaption strong{font-size:29px}
@media(min-width:1001px){.hero-chart{right:145px}}
@media(max-width:1000px) and (min-width:901px){.hero-chart{right:110px}.hero-visual .portrait-hero{width:175px;max-width:175px;right:12px;bottom:155px}}
@media(max-width:900px){.hero-chart{width:100%;left:-10%;right:auto}.hero-visual .portrait-hero{width:185px;max-width:185px;right:0;bottom:105px}}
@media(max-width:600px){.hero-chart{width:102%;left:-13%;right:auto}.hero-visual .portrait-hero{width:125px;max-width:125px;right:0;bottom:90px}.hero-chart figcaption{left:15%;bottom:-7%;white-space:nowrap}.hero-visual .portrait-hero figcaption strong{font-size:24px}.hero-visual .portrait-hero figcaption span{font-size:12px}}
.hero-visual .portrait-hero img{mix-blend-mode:lighten}.hero-visual .portrait-hero{isolation:isolate}
.hero:before{background:none}

/* Align the wheel axis with the gap between the first two menu items. */
@media(min-width:901px){
 .hero{min-height:1070px}
 .hero-chart{width:740px;left:calc(var(--wheel-axis, 63vw) - 370px);right:auto;top:12px}
 .hero-visual .portrait-hero{bottom:25px;right:18px}
}

/* Center the caption on the wheel and lift the portrait slightly. */
.hero-chart figcaption{left:0;right:0;width:100%;text-align:center}
@media(max-width:900px){.hero-visual .portrait-hero{bottom:125px}}
@media(max-width:600px){.hero-visual .portrait-hero{bottom:110px}}

/* Fix: keep the portrait clear of the wheel and pull it up toward the edge (added by request). */
@media(min-width:1436px){
  .hero-visual .portrait-hero{top:40px!important;bottom:auto!important;left:calc(50vw + 540px)!important;right:auto!important}
}
@media(min-width:1001px) and (max-width:1435px){
  .hero-visual .portrait-hero{top:40px!important;bottom:auto!important;left:calc(100vw - 210px)!important;right:auto!important}
}
@media(min-width:901px) and (max-width:1000px){
  .hero-visual .portrait-hero{top:30px!important;bottom:auto!important;right:0!important;left:auto!important}
}
