:root{--paper:#f7f6ef;--ink:#203e35;--muted:#657069;--line:#d8ded3;--sage:#e9eddf;--accent:#c4cd98}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a17431;outline-offset:6px}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.header{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:120px}.brand{display:flex;align-items:center;gap:13px;font-size:20px;letter-spacing:-.5px;font-weight:600;line-height:1.25}.brand small{display:block;font-size:10px;letter-spacing:1px;font-weight:400;margin-top:7px;color:var(--muted)}.brand-mark{font-size:48px;line-height:1;font-weight:400}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a:hover,.text-link:hover{color:#768452}.nav-book{border-bottom:1px solid var(--ink);padding:9px 0}.nav-book span{margin-left:20px}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:9px 12px;border-radius:4px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:54px;padding-top:26px;padding-bottom:62px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin:0 0 25px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#72906a;vertical-align:middle;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.6px;line-height:1.08}h1{font-size:clamp(42px,4.3vw,65px);margin-bottom:25px}em{font-weight:400;color:#7a8864}h2{font-size:clamp(36px,3.6vw,53px);margin-bottom:24px}h3{font-size:20px;letter-spacing:-.5px;line-height:1.3;font-weight:500;margin-bottom:13px}.intro{font-size:16px;color:var(--muted);max-width:430px;line-height:1.8;margin-bottom:24px}.conditions{display:flex;gap:0;align-items:center;font-size:13px;margin-bottom:26px}.conditions span+span:before{content:'·';margin:0 17px;color:#89947e}.button{background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 25px;border-radius:4px;font-size:13px;transition:background .2s,transform .2s;min-height:56px}.button:hover{background:#38594b;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.micro{font-size:10px;color:var(--muted);margin:12px 0 0}.hero-art{height:565px;border-radius:180px 180px 5px 5px;position:relative;overflow:hidden;background:linear-gradient(145deg,#d6decb,#b6c1a3 52%,#8a9e8c)}.art-grain{position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.45' d='M0 0h180v180H0z'/%3E%3C/svg%3E");z-index:5;pointer-events:none}.sun{position:absolute;width:152px;height:152px;background:radial-gradient(circle at 40% 40%,#f3edcf,#dbdcb7);border-radius:50%;left:37%;top:19%;box-shadow:0 0 65px #ece6c033}.arch{position:absolute;border-radius:50% 50% 0 0}.arch-back{width:390px;height:390px;left:-130px;top:47%;transform:rotate(22deg);background:linear-gradient(130deg,#c8d0b7,#7e9585);box-shadow:inset 0 0 45px #647f6e33}.arch-front{width:440px;height:360px;right:-160px;top:55%;transform:rotate(-30deg);background:linear-gradient(80deg,#537663,#91a48c);box-shadow:inset 30px 30px 50px #d7dfbd33}.water{position:absolute;inset:81% 0 0;background:linear-gradient(#b3bda785,#809686);backdrop-filter:blur(4px);border-top:1px solid #d6dec273}.art-top{position:absolute;top:45px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:3px}.art-bottom{position:absolute;left:34px;bottom:62px;color:#f6f5e9;font:34px/1.15 Georgia,serif;letter-spacing:-1px;z-index:6}.art-index{position:absolute;bottom:22px;left:34px;font-size:8px;letter-spacing:2px;color:#f6f5e9;z-index:6}.divider{border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);letter-spacing:.5px}.divider a span{margin-left:18px}.section{padding-top:110px;padding-bottom:110px}.section-heading{max-width:670px;margin-bottom:48px}.section-heading>p:last-child{color:var(--muted);max-width:480px;font-size:15px}.request-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.request-grid article{border-top:1px solid var(--line);position:relative;padding-top:30px}.number{font-size:10px;color:var(--muted);position:absolute;right:0;top:23px}.line-icon{font-size:45px;height:83px;color:#819575}.request-grid p,.approach-grid p{font-size:14px;line-height:1.8;color:var(--muted);max-width:310px;margin-bottom:0}.consultation{background:var(--ink);color:var(--paper);padding:95px 0}.consultation-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.consultation em{color:#c4cd98}.section-lead{color:#c1cfc4;font-size:14px;max-width:335px;margin-bottom:0}.meeting-row{display:flex;gap:22px;padding:0 0 24px;border-bottom:1px solid #ffffff25;margin-bottom:24px}.meeting-row>span{font-size:10px;color:#c4cd98;line-height:26px}.meeting-row h3{font-size:17px;margin-bottom:9px}.meeting-row p{font-size:13px;color:#c1cfc4;margin:0}.meeting-meta{display:flex;justify-content:space-between;margin:28px 0}.meeting-meta strong{font-weight:400;font-size:20px}.meeting-meta small{display:block;font-size:9px;color:#c1cfc4;margin-top:3px}.light{background:#e5e9d8;color:var(--ink);width:100%}.light:hover{background:#c8d2b4}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.author-art{height:490px;background:#e5e9dc;position:relative;overflow:hidden;border-radius:4px}.author-art>span{position:absolute;top:30px;left:30px;font-size:10px;letter-spacing:3px;line-height:1.4}.orbit{position:absolute;width:335px;height:335px;border:1px solid #94a17d88;border-radius:50%;top:90px;left:85px}.o2{transform:translate(-65px,38px)}.o3{transform:translate(28px,80px)}.author-art b{position:absolute;left:42px;top:150px;font:52px/1.06 Georgia,serif;font-weight:400;letter-spacing:-2px}.author-art b i{color:#7c8d67}.author-art small{position:absolute;bottom:28px;left:30px;font-size:8px;letter-spacing:2px}.about-copy p:not(.eyebrow){font-size:14px;color:var(--muted)}.about-copy .role{color:var(--ink)!important;font-size:17px!important}.text-link{display:inline-block;font-size:13px;padding-bottom:7px;border-bottom:1px solid var(--ink);margin-top:15px}.text-link span{margin-left:28px}.approach{background:#edf0e5}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.approach-grid article{border-top:1px solid #c6ceba;padding-top:20px}.approach-grid article>span{font-size:9px;letter-spacing:1.2px;color:var(--muted);display:block;margin-bottom:35px}.approach-grid h3{font-size:19px}.approach-grid p{font-size:13px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.questions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;list-style:none;position:relative;padding-right:30px;font-size:15px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;font-size:22px;line-height:22px;color:#7b8b6a}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);padding-top:17px;margin:0;max-width:440px}.booking{background:#e8eddd;text-align:center;padding:68px 25px;border-radius:130px 130px 5px 5px}.booking h2{font-size:64px}.booking>p:not(.eyebrow):not(.micro){color:var(--muted);font-size:14px}.booking .conditions{justify-content:center}.booking .eyebrow{margin-bottom:18px}.footer{padding-top:70px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:38px}.footer-top>div>a{display:block;font-size:13px;text-align:right;margin-bottom:4px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:22px;font-size:9px;color:var(--muted)}.skip{position:absolute;left:15px;top:-100px;background:var(--ink);color:white;padding:10px;z-index:100}.skip:focus{top:15px}
@media(min-width:1600px){.hero{padding-top:45px;padding-bottom:85px}.hero-art{height:600px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header{min-height:100px}.brand{font-size:17px}.brand small{font-size:8px}nav{gap:18px;font-size:11px}.hero{gap:25px}.hero-art{height:500px}h1{font-size:47px;letter-spacing:-2px}.consultation-grid,.about-grid,.faq-grid{gap:50px}.approach-grid{grid-template-columns:1fr 1fr;gap:40px}.section{padding-block:80px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{min-height:90px;flex-wrap:wrap;gap:12px;padding-block:16px}.brand-mark{font-size:37px}.brand{font-size:16px}.brand small{font-size:7px;letter-spacing:.4px}.menu-toggle:not([hidden]){display:block;font-size:12px}.menu-toggle span{margin-left:10px}nav{width:100%;flex-wrap:wrap;gap:10px 20px;font-size:12px;padding:10px 0}.js nav{display:none}.js nav.is-open{display:flex}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:28px;gap:35px;padding-bottom:35px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:22px}h1{font-size:clamp(36px,7.5vw,51px);letter-spacing:-1.6px;line-height:1.1;margin-bottom:20px}.intro{font-size:14px;line-height:1.7;margin-bottom:18px}.conditions{font-size:12px;margin-bottom:23px}.conditions span+span:before{margin:0 14px}.button{font-size:12px;padding:17px 19px;gap:20px}.hero-art{height:350px;border-radius:120px 120px 4px 4px}.sun{width:105px;height:105px;top:20%;left:43%}.art-top{top:28px}.art-bottom{font-size:29px;bottom:50px;left:25px}.art-index{left:25px;bottom:18px;font-size:7px}.arch-back{top:42%}.arch-front{top:58%}.divider{font-size:8px;gap:20px;padding:17px 0}.section{padding-block:65px}h2{font-size:39px;letter-spacing:-1.5px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:20px}.section-heading{margin-bottom:32px}.section-heading>p:last-child{font-size:14px}.request-grid{grid-template-columns:1fr;gap:30px}.request-grid article{padding:23px 0 0 64px}.line-icon{position:absolute;left:0;top:18px;font-size:35px}.request-grid h3{font-size:19px;padding-right:18px}.request-grid p{max-width:none;font-size:13px}.number{top:20px}.consultation{padding-block:60px}.consultation-grid,.about-grid,.faq-grid{grid-template-columns:1fr;gap:36px}.consultation h2 br:nth-child(2){display:none}.meeting-row h3{font-size:16px}.meeting-meta strong{font-size:18px}.author-art{height:330px;order:2}.author-art b{font-size:42px;top:100px}.orbit{width:260px;height:260px;top:50px}.author-art>span{font-size:8px}.about-copy .role{font-size:16px!important}.approach-grid{gap:30px 23px}.approach-grid h3{font-size:17px}.approach-grid p{font-size:12px}.approach-grid article>span{font-size:8px;margin-bottom:20px}.faq-grid{gap:12px}summary{font-size:14px}.booking{padding:48px 21px;border-radius:85px 85px 4px 4px}.booking h2{font-size:48px}.booking .button{width:100%}.booking>p:not(.eyebrow):not(.micro){font-size:13px}.footer{padding-top:45px}.footer-top{flex-direction:column;gap:25px;padding-bottom:25px}.footer-top>div>a{text-align:left}.footer-bottom{flex-direction:column;gap:7px;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Official logo supplied as PDF; preserve its full lockup. */
.brand-logo{display:block;width:270px;height:auto;mix-blend-mode:multiply}
@media(max-width:700px){.brand-logo{width:215px}.header{column-gap:8px}}

/* Author materials supplied by the site owner. */
.author-photo{margin:0;align-self:start}
.author-photo>img{width:100%;height:auto;display:block;border-radius:150px 150px 4px 4px}
.author-photo figcaption{font-size:10px;color:var(--muted);margin-top:12px;line-height:1.6}
.author-book{display:grid;grid-template-columns:120px 1fr;gap:25px;align-items:center;border-top:1px solid var(--line);padding-top:26px;margin-top:32px}
.book-cover-link{display:block}.book-cover-link img{width:100%;height:auto;display:block;box-shadow:4px 7px 15px #203e351c;border-radius:1px}
.author-book .eyebrow{font-size:8px;margin-bottom:10px;letter-spacing:1.5px}.author-book h3{font:25px/1.1 Georgia,serif;margin-bottom:7px}
.author-book p:not(.eyebrow){font-size:12px;line-height:1.6;margin-bottom:10px}.author-book .book-subtitle{color:var(--ink)}
.book-detail{font-size:10px;border-bottom:1px solid var(--line);padding-bottom:4px}.book-detail span{margin-left:10px}
@media(max-width:1000px) and (min-width:701px){.author-book{grid-template-columns:90px 1fr;gap:18px}}
@media(max-width:700px){.author-photo{order:0}.author-photo>img{border-radius:100px 100px 4px 4px}.author-book{grid-template-columns:105px 1fr;gap:20px}.author-book h3{font-size:23px}}

/* Contacts and legal references. */
.footer-brand-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:36px;border-bottom:1px solid var(--line)}
.footer-brand-row>p{font:italic 22px/1.4 Georgia,serif;color:#7a8864;margin:0;text-align:right}
.footer-columns{display:grid;grid-template-columns:1.25fr 1fr 1.1fr .95fr;gap:38px;padding:40px 0}
.footer-columns h2{font:600 11px/1.5 Arial,Helvetica,sans-serif;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 23px}
.footer-columns a{display:block;font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:13px;overflow-wrap:anywhere}
.footer-columns a:hover{text-decoration:underline;color:var(--ink)}
.footer-columns p,.footer-columns address{font-size:12px;line-height:1.8;font-style:normal;color:var(--muted);margin:0 0 12px}
.footer-columns .footer-name{color:var(--ink)}
.footer-contact a{margin-bottom:7px}.footer-copyright{border-top:1px solid var(--line);padding-top:22px;font-size:10px;line-height:1.8;color:var(--muted)}
@media(max-width:1000px){.footer-columns{grid-template-columns:1fr 1fr;gap:30px 50px}}
@media(max-width:700px){.footer-brand-row{align-items:flex-start;gap:20px}.footer-brand-row>p{display:none}.footer-columns{grid-template-columns:1fr;gap:26px;padding:30px 0}.footer-columns h2{margin-bottom:15px}.footer-columns a{font-size:13px;margin-bottom:12px}.footer-columns p,.footer-columns address{font-size:13px}.footer-copyright{font-size:10px}}

.book-order{font-size:11px;padding:12px 17px;min-height:44px;gap:25px;margin-top:5px}
@media(max-width:700px){.book-order{padding:12px;font-size:11px;gap:14px}}
