/* Shared chapter heading size, including consultation and service titles. */
:root{--chapter-title-size:1.65rem}
@media(max-width:480px){:root{--chapter-title-size:1.45rem}}
@font-face{font-family:Italiana;src:url('assets/Italiana-Regular.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{font-size:18px;scroll-behavior:smooth}body{margin:0;background:#f5f2eb;color:#000;font-family:Arial,Helvetica,sans-serif;line-height:1.75}h1,h2,h3{font-family:Italiana,Georgia,serif;font-size:var(--chapter-title-size);line-height:1.3;font-weight:400;margin:0 0 1.2rem;color:#000}p{margin:0 0 1.3rem}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit;color:inherit}button,.button{border:1px solid #918365;background:#eee6d4;padding:12px 22px;cursor:pointer;text-decoration:none;display:inline-block;line-height:1.5}button:hover,.button:hover{background:#e2d3b0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}.wrap{max-width:1250px;margin:auto;padding-left:64px;padding-right:64px}.skip{position:absolute;left:12px;top:-80px;background:#f5f2eb;padding:10px;z-index:10}.skip:focus{top:10px}header{background:#a88b34;color:#fff}.masthead{max-width:1440px;margin:auto;height:250px;padding:0 40px;display:grid;grid-template-columns:1fr 280px 1fr;align-items:center;border-bottom:1px solid #ffffff70}.brand{grid-column:2;display:block}.logo-window{width:280px;height:245px;position:relative;display:block;overflow:hidden}.logo-window img{position:absolute;width:340px;height:340px;max-width:none;left:-30px;top:-48px}.icon-button{padding:10px;border:0;background:transparent;color:white;display:inline-flex;position:relative}.icon-button:hover{background:#ffffff18}.icon-button svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.5}.menu-trigger{justify-self:start}.header-actions{justify-self:end;display:flex;gap:14px}.cart-count{position:absolute;right:-.15rem;top:-.1rem;min-width:1.2rem;height:1.2rem;padding:0 .2rem;display:grid;place-items:center;background:#fff;color:#000;border-radius:50%;font-family:inherit;font-size:.8rem;font-weight:400;line-height:1;font-variant-numeric:tabular-nums}.welcome-photo{margin:0 auto;max-width:1440px}.welcome-photo img{display:block;width:100%;height:auto}.welcome-photo figcaption{padding:10px 24px;font-size:1rem;text-align:right}.opening{padding-top:65px;padding-bottom:85px;text-align:center}.opening h1{white-space:nowrap}.opening-copy{max-width:880px;margin:25px auto 0}.chapter{display:grid;grid-template-columns:1fr 1.8fr;gap:55px;padding-top:75px;padding-bottom:90px;min-height:52vh}.chapter-heading{border-top:1px solid #918365;padding-top:25px}.chapter-body{padding-top:22px}.chapter-body>p:last-child{margin-bottom:0}.method-list{list-style:none;padding:0;margin:45px 0 0}.method-list li{padding:30px 0;border-top:1px solid #d5cfc2}.services{grid-column:1/-1}.services article{display:grid;grid-template-columns:1fr 1.8fr;gap:55px;padding:45px 0;border-top:1px solid #d5cfc2}.services ul{padding-left:20px}strong{font-weight:400}.feature{border-top:1px solid #d5cfc2;margin-top:40px;padding-top:35px}.text-link{display:block;margin:24px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:1px solid #aaa08e;background:#fcfaf5;padding:12px;margin-top:8px;border-radius:0}form{margin:30px 0}footer{border-top:1px solid #e1ddd4;padding-top:14px;padding-bottom:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 24px;font-size:.7rem;line-height:1.5;color:#736b60}footer p{margin:0}dialog{border:1px solid #d5cfc2;background:#f5f2eb;width:min(760px,calc(100% - 30px));max-height:90dvh;padding:34px;color:#000}dialog::backdrop{background:rgb(0 0 0/.3)}.dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:20px}.dialog-top h2{margin:0}.close{font-size:1.65rem;line-height:1;border:0;padding:0 8px;background:none}#menu-panel{margin:0 auto 0 0;min-height:100dvh;max-height:100dvh;width:min(480px,100%);padding:40px}#menu-panel nav{display:flex;flex-direction:column}#menu-panel nav a{font-family:Italiana,Georgia,serif;font-size:1.65rem;text-decoration:none;padding:13px 0;border-bottom:1px solid #d5cfc2}#menu-panel nav a[aria-current]{text-decoration:underline}#cart-panel{margin:0 0 0 auto;min-height:100dvh;max-height:100dvh;width:min(580px,100%)}.cart-item{padding:22px 0;border-top:1px solid #d5cfc2}.cart-item button{background:none;padding:5px 12px}.cart-item p{margin-bottom:10px}pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid #d5cfc2;padding-top:15px}.request-result{margin-top:30px}#search-results a{display:block;padding:16px 0;border-bottom:1px solid #d5cfc2}.faq details{border-bottom:1px solid #d5cfc2;padding:20px 0}.faq summary{cursor:pointer;font-family:Italiana,Georgia,serif;font-size:1.1rem;line-height:1.4}.faq details p{margin-top:20px}.request-form h3{margin-top:20px}main img{max-width:100%;height:auto}[hidden]{display:none!important}@media(max-width:800px){.wrap{padding-left:28px;padding-right:28px}.masthead{padding:0 18px;height:220px;grid-template-columns:1fr 220px 1fr}.logo-window{width:220px;height:215px}.logo-window img{width:300px;height:300px;left:-40px;top:-43px}.header-actions{gap:2px}.icon-button{padding:6px}.icon-button svg{width:25px;height:25px}.chapter,.services article{grid-template-columns:1fr;gap:18px}.chapter{padding-top:45px;padding-bottom:50px}.chapter-body{padding-top:0}.services{grid-column:auto}.opening{padding-top:35px;padding-bottom:40px}.opening h1{white-space:normal}.fields{grid-template-columns:1fr;gap:0}.services article{padding:30px 0}}@media(max-width:480px){.wrap{padding-left:22px;padding-right:22px}.masthead{height:185px;grid-template-columns:70px 1fr 70px;padding:0 12px}.brand{justify-self:center}.logo-window{width:180px;height:180px}.logo-window img{width:260px;height:260px;left:-40px;top:-37px}.icon-button svg{width:23px;height:23px}.welcome-photo figcaption{font-size:1rem;padding:8px 16px}dialog{padding:24px}.opening h1{font-size:clamp(.85rem,3.5vw,1.45rem);white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.case-intro{max-width:1100px;margin:auto;padding:65px 64px}.case-intro p{max-width:800px}.case-intro .eyebrow{margin-bottom:20px}@media(max-width:800px){.case-intro{padding:40px 28px}}

/* Real photographs: preserve complete frames and original files. */
.portfolio-stories,.portfolio-beausejour{grid-column:1/-1}.portfolio-story{border-top:1px solid #d5cfc2;padding:40px 0 15px;margin-top:15px}.portfolio-intro{display:grid;grid-template-columns:1fr 1.8fr;gap:55px;margin-bottom:22px}.portfolio-story figure{margin:0}.portfolio-story figure a{display:block}.portfolio-story img{display:block;width:100%;height:auto;object-fit:contain}.portfolio-story figcaption{padding:12px 0 22px;font-size:1rem}.portfolio-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.portfolio-kitchen{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin:25px 0 35px}.portfolio-beausejour{margin-top:0;max-width:none}.portfolio-beausejour p{max-width:820px}@media(max-width:800px){.portfolio-intro{grid-template-columns:1fr;gap:0}.portfolio-kitchen{gap:24px}}@media(max-width:600px){.portfolio-pair,.portfolio-kitchen{grid-template-columns:1fr}.portfolio-story{padding-top:28px}}

/* Bathroom editorial case: original photography, live accessible text. */
.bath-case{display:grid;grid-template-columns:minmax(230px,.85fr) 2fr;gap:28px;background:#eee8de;padding:30px}.bath-case-copy .case-label,.bath-case h3{color:#aa6035}.case-label{text-transform:uppercase;letter-spacing:.1em}.bath-case h2 span{display:block;font-style:italic;color:#aa6035;margin-top:10px}.bath-case-copy ul{padding-left:20px}.bath-case-copy li{margin-bottom:12px}.bath-case-copy h3{margin-top:28px}.case-signature{margin-top:30px}.bath-case .portfolio-pair{gap:16px}.bath-case figcaption{color:#aa6035;padding:10px 0}.case-outcome{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid #b88868;padding-top:20px}.case-outcome h3{grid-column:1/-1;margin:0}.case-outcome p{margin:0}.bath-case-visuals{min-width:0}@media(max-width:1000px){.bath-case{grid-template-columns:1fr}.bath-case-visuals,.case-outcome{grid-column:1}.bath-case-copy ul{columns:2;column-gap:35px}.case-signature{margin-bottom:0}}@media(max-width:600px){.bath-case{padding:20px}.bath-case-copy ul{columns:1}.case-outcome{grid-template-columns:1fr}.case-outcome h3{grid-column:1}}

/* Readable, warmer body typography; preserve title face. */
body{font-family:Georgia,"Times New Roman",serif;font-size:1rem;line-height:1.7}.opening{text-align:left}.opening-copy{max-width:none;margin:24px 0 0}.opening-copy p{margin-bottom:10px}.opening h1{white-space:normal}.portfolio-story figcaption{font-size:1rem}button,input,select,textarea{font-family:inherit}.portfolio-story>figure{cursor:zoom-in}
.case-reading{border-bottom:1px solid #d5cfc2;padding:12px 0 24px;margin-bottom:20px}.case-reading summary{cursor:pointer;font-size:1rem}.case-reading h3{margin-top:20px;font-size:1.3rem}.case-reading p{max-width:760px}

#menu-panel nav a{font-size:1.15rem;line-height:1.4;padding:12px 0}#menu-panel .dialog-top h2{font-size:1.3rem}.route-view[hidden]{display:none!important}

/* Legal information uses the existing editorial typography. */
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}.site-footer a{padding:3px 0;text-decoration:none}.site-footer a:hover{text-decoration:underline}.home-signature,.chapter-body>.signature{margin:24px 0 0;text-align:left;font-size:.8rem;font-style:italic}.legal-copy h2{margin-top:2rem}.legal-copy .legal-draft{border-left:2px solid #a88b34;padding-left:1rem}.legal-copy dl{margin:1.5rem 0}.legal-copy dt{margin-top:1.2rem}.legal-copy dd{margin:0 0 1rem;padding-left:1rem}.legal-copy a{overflow-wrap:anywhere}

/* Compact homepage heading, kept on one line across screen sizes. */
.opening h1{font-size:clamp(.8rem,4.5vw,1.7rem);line-height:1.25;white-space:nowrap;text-wrap:nowrap;max-width:100%;}

/* Two clear paths: the guide anywhere, and on-site support in Guadeloupe. */
.eyebrow{font-family:Georgia,"Times New Roman",serif;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.offer-meta,.form-note{font-size:.88rem;line-height:1.55}.form-note{margin-top:18px;max-width:580px}
.home-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding-bottom:80px}
.path-card{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid #918365;background:#eee8dc;padding:34px}
.path-card h2{font-size:1.85rem}.path-card .button{margin-top:auto}
.home-projects{padding-bottom:75px}.section-intro{max-width:780px;margin-bottom:30px}.section-intro h2{font-size:2.2rem}
.project-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.project-preview-grid figure{margin:0}.project-preview-grid img{display:block;width:100%;height:auto}.project-preview-grid figcaption{padding-top:12px}
.guide-page,.accompaniment-page{padding-top:70px;padding-bottom:70px}
.guide-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:65px;align-items:center}
.guide-cover{margin:0;max-width:420px}.guide-cover img{display:block;width:100%;height:auto;border:1px solid #d5cfc2;box-shadow:8px 12px 24px #51401d15}
.guide-copy h1,.service-hero h1{font-size:var(--chapter-title-size);line-height:1.3}
.guide-price{font-family:Italiana,Georgia,serif;font-size:2.4rem;line-height:1.2;margin:24px 0 12px}
.guide-topics{border-top:1px solid #d5cfc2;margin-top:65px;padding-top:40px}
.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:30px}.topic-grid h3{font-size:1.5rem}.topic-grid p{font-size:.95rem}
.guide-details{max-width:900px;margin:30px auto 0}.guide-sample{border-top:1px solid #d5cfc2;border-bottom:1px solid #d5cfc2;padding:22px 0}
.guide-sample summary{font-family:Italiana,Georgia,serif;font-size:1.65rem;line-height:1.3;cursor:pointer}
.guide-sample img{display:block;max-width:600px;width:100%;height:auto;margin:24px auto 0;border:1px solid #d5cfc2}
.soft-callout{margin-top:55px;background:#eee8dc;padding:30px}.soft-callout .text-link{margin-bottom:0}
.service-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:65px;align-items:center}
.service-hero figure{margin:0;max-width:360px;justify-self:end}.service-hero img{display:block;width:100%;height:auto}.service-hero figcaption{font-size:.85rem;padding-top:10px}
.accompaniment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:60px}
.accompaniment-options{margin-top:55px}.accompaniment-options>.accompaniment-grid{margin-top:30px}
.accompaniment-grid article{display:flex;flex-direction:column;border-top:1px solid #918365;padding-top:25px}.accompaniment-grid h2{font-size:var(--chapter-title-size);min-height:2.6em}
.service-need{font-style:italic;min-height:3.4em}.accompaniment-grid ul{padding-left:20px;margin:0 0 25px}.accompaniment-grid li{margin-bottom:10px}
.service-outcome{border-top:1px solid #d5cfc2;padding-top:18px;margin-top:auto;font-size:.95rem}
.exchange-callout{margin-top:40px;padding:38px;background:#eee8dc;max-width:850px;margin-left:auto;margin-right:auto;text-align:center}
.exchange-callout h2{font-size:var(--chapter-title-size)}.exchange-callout .form-note{margin:18px auto 0}.compact-faq{max-width:850px;margin:30px auto 0}
.guide-alternative{max-width:850px;margin:35px auto 0;font-size:.95rem}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #918365;outline-offset:3px}
@media(max-width:900px){.guide-hero,.service-hero{gap:35px}.accompaniment-grid{gap:22px}}
@media(max-width:700px){.home-paths,.guide-hero,.service-hero,.topic-grid,.accompaniment-grid{grid-template-columns:1fr}.home-paths{gap:24px;padding-bottom:45px}.path-card{padding:26px}.guide-page,.accompaniment-page{padding-top:40px;padding-bottom:45px}.guide-cover{max-width:290px;margin:auto}.guide-hero{gap:35px}.service-hero{gap:24px}.service-hero figure{max-width:360px;justify-self:center}.accompaniment-grid{margin-top:35px;gap:26px}.accompaniment-grid h2,.service-need{min-height:0}.service-outcome{margin-bottom:0}.exchange-callout{padding:25px}.guide-topics{margin-top:40px;padding-top:30px}.topic-grid{gap:10px}.home-projects{padding-bottom:45px}}
@media(max-width:480px){.project-preview-grid{grid-template-columns:1fr;gap:28px}.path-card h2{font-size:1.65rem}.button{max-width:100%}.soft-callout{padding:24px}.guide-price{font-size:2.2rem}}

/* Text-only introduction until the next accompaniment photograph is chosen. */
.service-hero-text{display:block;max-width:850px}

/* Reflow the existing boards without changing their photographic pixels. */
.project-case>h2{margin-bottom:25px}
.case-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.case-photos figure{margin:0}
.case-photo-frame{position:relative;overflow:hidden;aspect-ratio:481/806;width:100%}
.case-photos .case-photo-frame img{display:block;position:absolute;max-width:none;width:319.33471933%;height:127.04714640%;left:var(--sheet-left);top:-5.33498759%;object-fit:fill}
@media(max-width:600px){.case-photos{gap:10px}}

.case-accessible-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Original title artwork centered above a compact two-column case study. */
.case-editorial{max-width:900px;margin:24px auto 0;padding:20px 24px 24px;background:#f6f1e8;font-family:Arial,Helvetica,sans-serif;font-size:.95rem;line-height:1.5}
.case-editorial-heading{background:transparent;text-align:center;color:inherit}
.case-title-art{position:relative;overflow:hidden;aspect-ratio:474/220;width:min(100%,340px);margin:0 auto 10px}
.case-title-art img{display:block;position:absolute;max-width:none;width:324.05063291%;height:465.45454545%;left:0;top:-15.45454545%;object-fit:fill}
.case-editorial-intro{max-width:680px;margin:0 auto 24px}
.case-editorial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;align-items:start}
.case-editorial h4{font:600 1rem/1.35 Arial,Helvetica,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#b86135;margin:0 0 12px}
.case-editorial p{margin-top:0}
.case-choices ul{padding:0;margin:0;list-style:none}
.case-choices li{position:relative;padding-left:25px;margin:0 0 10px}
.case-choices li::before{content:'✓';position:absolute;left:0;top:0;color:#b86135}
.case-editorial-budget{border-top:1px solid #d5cfc2;padding-top:16px;margin-top:24px;font-size:.8rem}
.case-editorial-budget h4{font-size:.8rem;margin-bottom:8px}
.case-editorial-budget .case-price{font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;margin-bottom:5px}
.case-editorial-budget p:last-child{margin-bottom:0}
@media(max-width:600px){.case-editorial{padding:12px 12px 18px;font-size:.8rem}.case-editorial-columns{gap:18px}.case-title-art{width:min(100%,280px)}.case-editorial h4{font-size:.85rem}.case-choices li{padding-left:18px}.case-editorial-budget{font-size:.72rem}.case-editorial-budget .case-price{font-size:1rem}}

/* Keep the accompaniment questions close to the body text size. */
.accompaniment-page .compact-faq summary{font-size:1.1rem;line-height:1.4}

/* Appointment offer: visible price, concise benefits. */
.consultation-heading{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-bottom:8px}
.consultation-heading h2,.consultation-heading .consultation-price{margin:0}
.consultation-price{font-size:1.4rem;line-height:1.3;white-space:nowrap}
.consultation-benefits{max-width:620px;margin:20px auto;padding-left:20px;text-align:left}
.consultation-benefits li{margin:8px 0}

/* Original full-width homepage banner with a modestly enlarged logo. */
body:has(.route-view[data-route=""]:not([hidden])) .masthead{height:310px;grid-template-columns:1fr 350px 1fr}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window{width:350px;height:305px}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window img{width:480px;height:480px;left:50%;top:50%;transform:translate(-50%,-49.225%)}
@media(max-width:800px){
body:has(.route-view[data-route=""]:not([hidden])) .masthead{height:280px;grid-template-columns:1fr 300px 1fr}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window{width:300px;height:270px}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window img{width:430px;height:430px}
}
@media(max-width:480px){
body:has(.route-view[data-route=""]:not([hidden])) .masthead{height:235px;grid-template-columns:1fr min(220px,calc(100vw - 104px)) 1fr}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window{width:min(220px,calc(100vw - 104px));height:225px}
body:has(.route-view[data-route=""]:not([hidden])) .logo-window img{width:min(360px,calc((100vw - 104px) * 1.6));height:auto}
}

/* Each accompaniment opens its own selected quote request. */
.accompaniment-grid .service-outcome{margin-bottom:0}
.service-select{align-self:flex-start;margin-top:16px;font-size:.88rem}
