/* Art direction: each page has its own composition and intentional CSS crops. */
.homeFashion{position:relative;width:100%;padding:0 30px 46px 0;isolation:isolate}
.homeFashion .homeHeroCollage{width:100%;max-width:none;margin:0;overflow:hidden;border:0;box-shadow:none;transform:none;animation:none;filter:none;aspect-ratio:4/5}
.homeFashion .homeHeroCollage img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 49%;transform:scale(1.22);transform-origin:47% 55%}
.homeHero__visual::before{display:none}
.homeFashion__detail{position:absolute;z-index:2;width:46%;aspect-ratio:4/5;right:-10px;bottom:4px;margin:0;border:6px solid #f7f6f2;box-shadow:0 15px 25px #1f291626;transform:rotate(5deg);overflow:hidden}
.homeFashion__detail img{width:100%;height:100%;object-fit:cover;object-position:22% 77%;transform:scale(1.6);transform-origin:25% 75%}
.homeFashion__label{position:absolute;left:12px;bottom:7px;font-size:10px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;color:#67705e}
/* About: the portrait opens the page on the left, a contrasting outfit adds a second scale. */
.pageV2--about .pageV2Hero__grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:26px}
.pageV2--about .pageV2Hero__copy{grid-column:7 / -1;grid-row:1;padding-left:24px}
.pageV2--about .pageV2Hero__media.aboutEditorial{grid-column:1 / 7;grid-row:1;max-width:none;width:100%;padding:0 64px 68px 0}
.pageV2--about .aboutEditorial .pageV2Photo{width:100%;margin:0;overflow:hidden;aspect-ratio:4/5;background:none;border:0;box-shadow:none}
.pageV2--about .aboutEditorial .pageV2Photo img{width:100%;height:100%;object-fit:cover;object-position:52% 38%;transform:scale(1.55);transform-origin:55% 34%;filter:none}
.aboutEditorial__look{position:absolute;right:0;bottom:0;width:42%;aspect-ratio:3/4;overflow:hidden;margin:0;border:6px solid #f7f6f2;transform:rotate(-4deg);z-index:3;box-shadow:0 14px 30px #26301f1a}
.aboutEditorial__look img{width:100%;height:100%;object-fit:cover;object-position:50% 62%;transform:scale(1.16);transform-origin:50% 70%}
.aboutEditorial__label{position:absolute;left:0;bottom:25px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#66705d}
.pageV2--about .pageV2MediaNote--about{grid-column:7 / -1;margin:0 0 0 24px}
/* Services: work, fitting, tactile detail. A horizontal story instead of a cover portrait. */
.pageV2--services .pageV2Hero__grid.photoHero{display:block}
.pageV2--services .photoHero .pageV2Hero__copy{max-width:880px;margin:0 auto;text-align:center;justify-items:center}
.pageV2--services .photoHero .pageV2Hero__title{font-size:clamp(40px,4.4vw,60px)}
.processStory{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:24px;align-items:start;margin:40px 0 0}
.processStory figure{position:relative;margin:0;overflow:hidden;height:290px}
.processStory figure:nth-child(2){height:340px;margin-top:32px}
.processStory figure:nth-child(3){height:250px;margin-top:65px}
.processStory img{display:block;width:100%;height:100%;object-fit:cover}
.processStory__selection img{object-position:10% 56%;transform:scale(1.3);transform-origin:10% 58%}
.processStory__fitting img{object-position:50% 58%;transform:scale(1.08)}
.processStory__detail img{object-position:20% 72%;transform:scale(1.65);transform-origin:24% 75%}
.processStory figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 18px 16px;color:#fff;background:linear-gradient(transparent,#172015ba);font-family:"Cormorant Garamond",Georgia,serif;font-size:26px}
.processStory figcaption span{font:10px Manrope,Arial,sans-serif;margin-right:10px;opacity:.7}
/* Cases: two moods, a single personal style. */
.pageV2--cases .pageV2Hero__grid.photoHero{display:block}
.pageV2--cases .photoHero .pageV2Hero__copy{width:100%;max-width:920px;margin:0 auto;text-align:center;justify-items:center}
.pageV2--cases .photoHero .pageV2Hero__title{font-size:clamp(38px,4vw,55px);line-height:1.04}
.pageV2--cases .photoHero .pageV2Hero__lead{max-width:78ch}
.styleDiptych{display:grid;grid-template-columns:1fr .55fr .85fr;gap:30px;margin-top:42px;align-items:center}
.styleDiptych figure{margin:0;position:relative;overflow:hidden;height:440px}
.styleDiptych__relaxed{height:350px!important}
.styleDiptych img{width:100%;height:100%;display:block;object-fit:cover}
.styleDiptych__city img{object-position:50% 62%;transform:scale(1.12);transform-origin:50% 65%}
.styleDiptych__relaxed img{object-position:48% 50%;transform:scale(1.08)}
.styleDiptych__words{font:32px/1.1 "Cormorant Garamond",Georgia,serif;color:#3a4434;text-align:center}
.styleDiptych figcaption{position:absolute;bottom:0;left:0;right:0;padding:34px 16px 15px;color:#fff;background:linear-gradient(transparent,#162011b0);font-size:11px;letter-spacing:.04em}
/* Contacts: a quiet meeting, integrated into a warm dark panel. */
.pageV2--contacts .pageV2Hero__grid.photoHero{position:relative;display:grid;grid-template-columns:1fr 1.05fr;column-gap:60px;row-gap:24px;background:#302c26;color:#f4f1e8;padding:58px 48px 52px;overflow:hidden;isolation:isolate;min-height:620px}
.pageV2--contacts .photoHero .pageV2Hero__copy{grid-column:2;grid-row:1;padding:0;justify-items:start;text-align:left;z-index:2;align-self:end}
.pageV2--contacts .photoHero .pageV2Hero__title{color:#f4f1e8;font-size:clamp(44px,4.8vw,66px);line-height:.98;margin-top:18px}
.pageV2--contacts .photoHero .homeTag{color:#d1c6b2}
.pageV2--contacts .photoHero .homeTag::before{background:#cfc4ad}
.pageV2--contacts .photoHero .pageV2Hero__lead{color:#d3cbbd;font-size:14px;line-height:1.8}
.pageV2--contacts .photoHero .pageV2Hero__actions{justify-content:flex-start;margin-top:18px}
.pageV2--contacts .photoHero .btn--primary{background:#f0ecdf;color:#302c26;border-color:#f0ecdf}
.pageV2--contacts .photoHero .contactIndex{grid-column:2;grid-row:2;align-self:start;z-index:2;margin:0;padding:0;width:100%;border-color:#ffffff25;color:#f0ecdf}
.pageV2--contacts .photoHero .contactIndex__label{color:#bcb29f}
.pageV2--contacts .photoHero .contactIndex__link{color:#f0ecdf;border-color:#ffffff25;padding:15px 0}
.pageV2--contacts .photoHero .contactIndex__link small{color:#bfb6a6}
.pageV2--contacts .currentPhoto{position:absolute;inset:0 auto 0 0;width:48%;height:100%;max-width:none;border:0;box-shadow:none;margin:0;z-index:0;overflow:hidden}
.pageV2--contacts .currentPhoto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#302c26)}
.pageV2--contacts .currentPhoto img{display:block;width:100%;height:100%;object-fit:cover;object-position:52% 35%;transform:scale(1.28);transform-origin:52% 37%}
.pageV2--contacts .currentPhoto figcaption{position:absolute;bottom:26px;left:26px;z-index:2;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){
 .homeFashion{max-width:480px;margin:0 auto;padding-right:30px;padding-bottom:46px}
 .pageV2--about .pageV2Hero__grid{grid-template-columns:1fr;gap:30px}
 .pageV2--about .pageV2Hero__copy{grid-column:1;grid-row:1;padding:0}
 .pageV2--about .pageV2Hero__media.aboutEditorial{grid-column:1;grid-row:2;max-width:520px;justify-self:center;padding-right:60px}
 .pageV2--about .pageV2MediaNote--about{grid-column:1;grid-row:3;margin:0}
 .processStory{gap:14px;margin-top:28px}
 .processStory figure{height:240px}.processStory figure:nth-child(2){height:290px;margin-top:20px}.processStory figure:nth-child(3){height:220px;margin-top:40px}
 .styleDiptych{gap:18px;grid-template-columns:1fr 1fr;align-items:end}
 .styleDiptych__words{grid-column:1 / -1;grid-row:1;font-size:28px;text-align:left}
 .styleDiptych figure{height:390px}.styleDiptych__relaxed{height:310px!important}
 .pageV2--contacts .pageV2Hero__grid.photoHero{column-gap:30px;padding:35px 25px;min-height:610px}
 .pageV2--contacts .photoHero .pageV2Hero__title{font-size:46px}
}
@media(max-width:600px){
 .pageV2--about .pageV2Hero__copy{display:contents}
 .pageV2--about .pageV2Hero__grid>.pageV2Hero__copy>.homeTag{grid-column:1;grid-row:1}
 .pageV2--about .pageV2Hero__title{grid-column:1;grid-row:2;margin:0}
 .pageV2--about .pageV2Hero__lead{grid-column:1;grid-row:4;margin:0;font-size:13px;line-height:1.8}
 .pageV2--about .pageV2Hero__media.aboutEditorial{grid-row:3}
 .pageV2--about .pageV2MediaNote--about{grid-row:5}
 .pageV2--services .photoHero .pageV2Hero__lead,.pageV2--cases .photoHero .pageV2Hero__lead{font-size:13px;line-height:1.75}
 .homeFashion{width:100%;max-width:350px;padding:0 27px 40px 0}
 .homeFashion__detail{width:44%;right:0;border-width:4px;bottom:0}
 .homeFashion__label{font-size:8px;left:0;bottom:1px}
 .pageV2--about .pageV2Hero__media.aboutEditorial{padding:0 40px 50px 0}
 .aboutEditorial__look{border-width:4px;width:43%}
 .aboutEditorial__label{font-size:8px;bottom:15px}
 .processStory{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
 .processStory figure,.processStory figure:nth-child(2){height:240px;margin-top:0}
 .processStory figure:nth-child(3){grid-column:1 / -1;margin:0;height:180px}
 .processStory__detail img{transform:scale(1.35);transform-origin:25% 62%;object-position:20% 62%}
 .processStory figcaption{font-size:23px;padding:30px 12px 12px}
 .pageV2--services .photoHero .pageV2Hero__title,.pageV2--cases .photoHero .pageV2Hero__title{font-size:38px;line-height:1.03}
 .styleDiptych{gap:12px;margin-top:28px}
 .styleDiptych figure{height:290px}.styleDiptych__relaxed{height:235px!important}
 .styleDiptych figcaption{font-size:9px;padding:30px 9px 10px}
 .styleDiptych__words{font-size:27px;margin-bottom:4px}
 .pageV2--contacts .pageV2Hero__grid.photoHero{display:flex;flex-direction:column;padding:0 0 26px;gap:0;min-height:0}
 .pageV2--contacts .currentPhoto{position:relative;inset:auto;width:100%;height:330px;order:0;flex-shrink:0}
 .pageV2--contacts .currentPhoto img{object-position:50% 30%;transform:scale(1.65);transform-origin:52% 31%}
 .pageV2--contacts .currentPhoto::after{background:linear-gradient(0deg,#302c26,transparent 45%)}
 .pageV2--contacts .currentPhoto figcaption{bottom:20px;left:24px;font-size:8px}
 .pageV2--contacts .photoHero .pageV2Hero__copy{order:1;padding:15px 24px 0;width:100%;align-self:auto;gap:14px}
 .pageV2--contacts .photoHero .pageV2Hero__title{font-size:47px;margin-top:8px}
 .pageV2--contacts .photoHero .pageV2Hero__lead{font-size:12px;line-height:1.8}
 .pageV2--contacts .photoHero .contactIndex{order:2;width:calc(100% - 48px);margin:24px auto 0}
 .pageV2--contacts .photoHero .contactIndex__link{padding:14px 0}
 .pageV2--contacts .currentPhoto figcaption{letter-spacing:.1em}
}
/* Refined opening: one quiet photograph flowing into the text, no detail collage. */
.homeHero .homeHero__surface{position:relative;background:#302c26;overflow:hidden;isolation:isolate;padding:0}
.homeHero .homeHero__grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:42px;min-height:700px;padding:44px 46px;align-items:center}
.homeHero .homeHero__copy{grid-column:2;position:relative;z-index:2;width:100%;max-width:none;margin:0;padding:0}
.homeHero .homeHero__grid>.homeHero__visual{position:absolute;inset:0 auto 0 0;width:48%;height:100%;max-width:none;display:block;margin:0;padding:0;grid-column:auto;transform:none}
.homeHeroPhoto{position:relative;width:100%;height:100%;margin:0;overflow:hidden}
.homeHeroPhoto img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 43%}
.homeHeroPhoto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 62%,#302c26)}
.homeHero .homeHero__title{color:#f4f1e8;font-size:clamp(40px,4vw,55px);line-height:1.04;letter-spacing:-.04em;max-width:none;margin:22px 0 20px}
.homeHero .homeTag{color:#d4c9b4;font-size:10px;line-height:1.6;letter-spacing:.11em}
.homeHero .homeTag::before{background:#c8bba2}
.homeHero .homeHero__lead{color:#d3cbbd;font-size:14px;line-height:1.8;max-width:none;margin:0}
.homeHero .pageV2Hero__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;margin-top:25px}
.homePage .homeHero .btn--primary{background:#f0ecdf;color:#302c26;border-color:#f0ecdf}
.homePage .homeHero .btn--secondary{background:transparent;color:#f0ecdf;border-color:#ffffff55}
.homeHero .homeHero__links{margin-top:25px;gap:15px}
.homeHero .homeInlineLink{color:#ded5c4;border-color:#ffffff30;font-size:10px}
.homeHero .homeHero__stats{margin-top:25px;border-color:#ffffff25}
.homeHero .homeStat{padding-top:16px;border-color:#ffffff25}
.homeHero .homeStat__value{color:#f0ecdf;font-size:24px}
.homeHero .homeStat__text{color:#bfb5a4;font-size:10px;line-height:1.6}
.pageV2--about .aboutEditorial .pageV2Photo img{transform:none;object-fit:cover;object-position:50% 36%}
@media(max-width:900px){
 .homeHero .homeHero__grid{grid-template-columns:.75fr 1.25fr;gap:24px;padding:35px 28px;min-height:650px}
 .homeHero .homeHero__grid>.homeHero__visual{width:44%}
 .homeHero .homeHero__title{font-size:43px}
}
@media(max-width:600px){
 .homeHero .homeHero__grid{display:flex;flex-direction:column;gap:0;padding:0;min-height:0}
 .homeHero .homeHero__grid>.homeHero__visual{position:relative;inset:auto;width:100%;height:340px;order:0;flex-shrink:0;max-width:none}
 .homeHeroPhoto img{object-position:50% 27%}
 .homeHeroPhoto::after{background:linear-gradient(0deg,#302c26,transparent 50%)}
 .homeHero .homeHero__copy{order:1;padding:20px 24px 28px;width:100%}
 .homeHero .homeHero__title{font-size:39px;line-height:1.04;margin:17px 0}
 .homeHero .homeHero__lead{font-size:12px;line-height:1.8}
 .homeHero .homeTag{font-size:9px}
 .homeHero .pageV2Hero__actions{display:grid;grid-template-columns:1fr;width:100%;margin-top:22px;gap:10px}
 .homeHero .pageV2Hero__actions .btn{width:100%;white-space:normal}
 .homeHero .homeHero__links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:22px}
 .homeHero .homeHero__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:23px}
 .homeHero .homeStat:last-child{grid-column:1 / -1}
 .homeHero .homeStat__value{font-size:23px}
 .homeHero .homeStat__text{font-size:10px}
}
.homeHero .homeStat.reveal{opacity:1;transform:none}
/* Natural photographic treatment: no cut-outs, collage, tilt or synthetic fade. */
.homeHero .homeHero__grid{grid-template-columns:.88fr 1.12fr}
.homeHero .homeHero__grid>.homeHero__visual{width:44%}
.homeHeroPhoto::after{display:none}
.homeHeroPhoto img{object-position:50% 35%;transform:none;filter:none}
.homeHero .homeHero__surface{background:#302c26}
.pageV2--about .pageV2Hero__grid{align-items:center}
.pageV2--about .pageV2Hero__media.aboutEditorial{grid-column:1 / 6;max-width:400px;padding:0;justify-self:start;position:relative}
.pageV2--about .aboutEditorial .pageV2Photo{width:100%;aspect-ratio:3/4;margin:0;border:0;box-shadow:none;overflow:hidden}
.pageV2--about .aboutEditorial .pageV2Photo img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;filter:none}
.pageV2--about .pageV2Hero__copy{grid-column:7 / -1;padding-left:0}
.pageV2--about .pageV2MediaNote--about{grid-column:7 / -1;margin-left:0}
@media(max-width:900px){
 .homeHero .homeHero__grid>.homeHero__visual{width:40%}
 .pageV2--about .pageV2Hero__media.aboutEditorial{grid-column:1;grid-row:2;padding:0;max-width:380px;justify-self:center}
 .pageV2--about .pageV2Hero__copy{grid-column:1;padding:0}
 .pageV2--about .pageV2MediaNote--about{grid-column:1;margin:0}
}
@media(max-width:600px){
 .homeHero .homeHero__grid>.homeHero__visual{width:100%;height:340px}
 .homeHeroPhoto img{object-position:50% 29%}
 .pageV2--about .pageV2Hero__media.aboutEditorial{grid-row:3;width:100%;max-width:310px;padding:0}
 .pageV2--about .pageV2MediaNote--about{grid-row:5}
}
/* Lighter editorial revision: a warmer home portrait, airy small-photo mosaic. */
.homeHero .homeHero__grid{min-height:590px;padding:48px 46px;grid-template-columns:.88fr 1.12fr}
.homeHero .homeHero__grid>.homeHero__visual{width:49%}
.homeHeroPhoto img{object-fit:cover;object-position:50% 36%;transform:none}
.homeHeroPhoto::after{display:block;background:linear-gradient(90deg,transparent 54%,#302c26 100%)}
.homeHero .homeHero__title{font-size:clamp(40px,3.8vw,52px);font-weight:400;line-height:1.08;margin:22px 0;letter-spacing:-.035em}
.homeHero .homeHero__links{margin-top:24px}
.homeStatsBand{padding:24px 0 30px;background:#f7f6f2}
.homeStatsBand .homeHero__stats{margin:0;border:0;gap:0;max-width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}
.homeStatsBand .homeStat{padding:0 30px;border-top:0;border-right:1px solid #daddd1;display:flex;gap:20px;align-items:baseline}
.homeStatsBand .homeStat:first-child{padding-left:0}
.homeStatsBand .homeStat:last-child{border-right:0}
.homeStatsBand .homeStat__value{white-space:nowrap;font-size:25px;margin:0}
.homeStatsBand .homeStat__text{font-size:10px;line-height:1.6;max-width:180px;margin:0}
.pageV2--about .pageV2Hero__grid{column-gap:36px;row-gap:20px}
.pageV2--about .pageV2Hero__media.aboutMosaic{position:relative;grid-column:1 / 7;grid-row:1 / span 2;width:100%;max-width:550px;height:540px;padding:0;justify-self:start}
.aboutMosaic figure{position:absolute;margin:0;border:0;box-shadow:none;overflow:hidden;background:#e8e5dd}
.aboutMosaic img{display:block;width:100%;height:100%;object-fit:cover;filter:none;transform:none}
.aboutMosaic__portrait{width:39%;height:44%;left:1%;top:18%;transform:rotate(-2deg)}
.aboutMosaic__portrait img{object-position:50% 27%;transform:scale(1.12);transform-origin:50% 30%}
.aboutMosaic__street{width:33%;height:42%;right:4%;top:0;transform:rotate(3deg)}
.aboutMosaic__street img{object-position:50% 47%}
.aboutMosaic__summer{width:36%;height:44%;right:0;bottom:4%;transform:rotate(-2deg)}
.aboutMosaic__summer img{object-position:50% 40%}
.aboutMosaic__work{width:33%;height:27%;left:15%;bottom:0;transform:rotate(2deg)}
.aboutMosaic__work img{object-position:10% 55%}
.pageV2--about .pageV2Hero__copy{grid-column:7 / -1;grid-row:1;align-self:end;padding:0}
.pageV2--about .pageV2Hero__title{font-size:clamp(38px,4vw,54px);line-height:1.05}
.pageV2--about .pageV2Hero__lead{font-size:14px;line-height:1.8}
.pageV2--about .pageV2MediaNote--about{grid-column:7 / -1;grid-row:2;align-self:start;margin:8px 0 0}
@media(max-width:900px){
 .homeHero .homeHero__grid{min-height:580px;padding:32px 28px;gap:25px}
 .homeHero .homeHero__grid>.homeHero__visual{width:44%}
 .homeHero .homeHero__title{font-size:40px}
 .homeStatsBand .homeStat{display:block;padding:0 18px}
 .homeStatsBand .homeStat__text{margin-top:8px}
 .pageV2--about .pageV2Hero__media.aboutMosaic{grid-column:1;grid-row:2;width:100%;max-width:520px;height:490px;justify-self:center}
 .pageV2--about .pageV2Hero__copy{grid-column:1;grid-row:1;align-self:auto}
 .pageV2--about .pageV2MediaNote--about{grid-column:1;grid-row:3}
}
@media(max-width:600px){
 .homeHero .homeHero__grid{min-height:0;padding:0;gap:0}
 .homeHero .homeHero__grid>.homeHero__visual{width:100%;height:310px}
 .homeHeroPhoto img{object-position:50% 31%}
 .homeHeroPhoto::after{background:linear-gradient(0deg,#302c26,transparent 55%)}
 .homeHero .homeHero__title{font-size:36px;line-height:1.08;margin:16px 0}
 .homeHero .homeHero__copy{padding:12px 24px 27px}
 .homeHero .homeHero__lead{font-size:12px}
 .homeStatsBand{padding:23px 0}
 .homeStatsBand .homeHero__stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 15px}
 .homeStatsBand .homeStat{padding:0;border:0;display:block}
 .homeStatsBand .homeStat:last-child{grid-column:1 / -1}
 .homeStatsBand .homeStat__value{font-size:24px}
 .pageV2--about .pageV2Hero__media.aboutMosaic{grid-row:3;height:350px;width:100%;max-width:350px}
 .pageV2--about .pageV2Hero__title{grid-row:2;font-size:38px}
 .pageV2--about .pageV2Hero__lead{grid-row:4;font-size:13px}
 .pageV2--about .pageV2MediaNote--about{grid-row:5}
}
/* Book-first cover: the product, not a personal photograph, leads the page. */
.homeHero.bookFirstHero .homeHero__surface{background:#eeece3;color:#30392b;overflow:visible}
.homeHero.bookFirstHero .homeHero__grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;min-height:540px;padding:45px 0;align-items:center}
.homeHero.bookFirstHero .homeHero__copy{grid-column:1;grid-row:1;padding:0}
.homeHero.bookFirstHero .homeHero__title{color:#30392b;font-size:clamp(40px,4.4vw,60px);line-height:1.04;letter-spacing:-.04em}
.homeHero.bookFirstHero .homeTag{color:#67715e;font-size:10px}
.homeHero.bookFirstHero .homeTag::before{background:#7c876f}
.homeHero.bookFirstHero .homeHero__lead{color:#626958;font-size:14px;line-height:1.8;max-width:440px}
.homePage .homeHero.bookFirstHero .btn--primary{background:#293422;color:#f6f4eb;border-color:#293422}
.homePage .homeHero.bookFirstHero .btn--secondary{background:transparent;color:#35412d;border-color:#adb5a0}
.homeHero.bookFirstHero .homeInlineLink{color:#69705f;border-color:#b8beae;font-size:10px}
.homeHero.bookFirstHero .homeHero__grid>.bookFirstHero__visual{position:relative;inset:auto;width:100%;height:auto;grid-column:2;grid-row:1;max-width:none;padding:0}
.bookFirstHero__meta{display:flex;justify-content:space-between;gap:12px;color:#717965;font-size:10px;letter-spacing:.04em;margin-bottom:18px}
.bookFirstHero__spread{position:relative;display:block;width:100%;border:0;padding:0;background:#fff;cursor:pointer;box-shadow:0 16px 35px #3a44221c}
.bookFirstHero__spread img{display:block;width:100%;height:auto}
.bookFirstHero__spread>span{position:absolute;right:15px;bottom:15px;background:#2d3829;color:#f5f2e8;padding:10px 14px;font-size:11px}
.bookFirstHero__details{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #bfc5b3;border-bottom:1px solid #bfc5b3;margin-top:25px;padding:14px 0;font-size:12px;color:#48523d}
.bookFirstHero__footnote{font-size:10px;line-height:1.7;color:#7c826e;margin:13px 0 0}
.bookFirstHero button:focus-visible{outline:3px solid #7c8b66;outline-offset:4px}
/* About follows the approved Contacts treatment. */
.pageV2--about .pageV2Hero__grid.profilePanel{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:25px 60px;background:#302c26;color:#f4f1e8;padding:55px 48px;min-height:620px;overflow:hidden;isolation:isolate}
.pageV2--about .profilePanel .pageV2Hero__copy{display:block;grid-column:2;grid-row:1;align-self:end;width:100%;margin:0;padding:0;z-index:2}
.pageV2--about .profilePanel .pageV2Hero__title{color:#f4f1e8;font-size:clamp(40px,4.5vw,60px);line-height:1.03;margin:18px 0 24px}
.pageV2--about .profilePanel .homeTag{color:#d1c6b2}
.pageV2--about .profilePanel .homeTag::before{background:#cfc4ad}
.pageV2--about .profilePanel .pageV2Hero__lead{color:#d3cbbd;font-size:14px;line-height:1.8;margin:0}
.pageV2--about .profilePanel .pageV2MediaNote--about{grid-column:2;grid-row:2;align-self:start;display:block;margin:0;padding:20px 0 0;border-color:#ffffff25;color:#d3cbbd;z-index:2}
.pageV2--about .profilePanel .pageV2MediaNote--about p{color:#c5bcae;font-size:12px;line-height:1.8}
.pageV2--about .profilePanel .homeInlineLink{color:#eee7d9;border-color:#ffffff30;margin-top:10px;font-size:11px}
.profilePanel__photo{position:absolute;inset:0 auto 0 0;width:48%;height:100%;margin:0;overflow:hidden;z-index:0}
.profilePanel__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.profilePanel__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#302c26)}
.profilePanel__photo figcaption{position:absolute;bottom:26px;left:26px;color:#fff;z-index:1;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
/* Full originals, rather than a 480px variant enlarged with transforms. */
.pageV2--contacts .currentPhoto img{transform:none;object-position:50% 30%}
@media(max-width:900px){
 .homeHero.bookFirstHero .homeHero__grid{grid-template-columns:1fr;gap:28px;padding:25px 0;min-height:0}
 .homeHero.bookFirstHero .homeHero__copy{grid-column:1;grid-row:1}
 .homeHero.bookFirstHero .homeHero__grid>.bookFirstHero__visual{grid-column:1;grid-row:2;width:100%;max-width:650px;justify-self:center}
 .homeHero.bookFirstHero .homeHero__lead{max-width:600px}
 .pageV2--about .pageV2Hero__grid.profilePanel{gap:25px;padding:35px 25px}
}
@media(max-width:600px){
 .homeHero.bookFirstHero .homeHero__grid{display:flex;flex-direction:column;padding:16px 0 24px;gap:30px}
 .homeHero.bookFirstHero .homeHero__copy{order:0;padding:0}
 .homeHero.bookFirstHero .homeHero__grid>.bookFirstHero__visual{order:1;position:relative;inset:auto;width:100%;height:auto;padding:0}
 .homeHero.bookFirstHero .homeHero__title{font-size:40px;line-height:1.05;margin:19px 0}
 .homeHero.bookFirstHero .homeHero__lead{font-size:13px;line-height:1.8}
 .bookFirstHero__meta{font-size:9px;margin-bottom:12px}
 .bookFirstHero__spread>span{font-size:9px;right:10px;bottom:10px;padding:8px 10px}
 .bookFirstHero__details{font-size:10px;padding:12px 0;margin-top:18px}
 .bookFirstHero__footnote{font-size:9px}
 .pageV2--about .pageV2Hero__grid.profilePanel{display:flex;flex-direction:column;gap:0;padding:0 0 26px;min-height:0}
 .profilePanel__photo{position:relative;inset:auto;width:100%;height:330px;order:0;flex-shrink:0}
 .profilePanel__photo img{object-position:50% 26%}
 .profilePanel__photo::after{background:linear-gradient(0deg,#302c26,transparent 50%)}
 .profilePanel__photo figcaption{font-size:9px;bottom:20px;left:24px}
 .pageV2--about .profilePanel .pageV2Hero__copy{order:1;align-self:auto;padding:16px 24px 0;display:block}
 .pageV2--about .profilePanel .pageV2Hero__title{font-size:38px;margin:16px 0 20px}
 .pageV2--about .profilePanel .pageV2Hero__lead{font-size:12px;line-height:1.8}
 .pageV2--about .profilePanel .pageV2MediaNote--about{order:2;margin:24px 24px 0;padding-top:18px;width:calc(100% - 48px)}
 .pageV2--contacts .currentPhoto img{transform:none;object-position:50% 25%}
}
@media(max-width:600px){
 .homeHero.bookFirstHero .homeHero__grid{gap:20px;align-items:stretch}
 .homeHero.bookFirstHero .homeHero__copy{display:contents}
 .homeHero.bookFirstHero .homeTag{order:0}
 .homeHero.bookFirstHero .homeHero__title{order:1;margin:0}
 .homeHero.bookFirstHero .homeHero__grid>.bookFirstHero__visual{order:2}
 .homeHero.bookFirstHero .homeHero__lead{order:3;margin:0}
 .homeHero.bookFirstHero .pageV2Hero__actions{order:4;margin:0}
 .homeHero.bookFirstHero .homeHero__links{order:5;margin-top:4px}
}
@media(min-width:901px){
 .homeHero.bookFirstHero .homeHero__grid{padding:42px 32px;gap:36px;grid-template-columns:.95fr 1.05fr}
 .homeHero.bookFirstHero .homeHero__title{font-size:clamp(40px,4vw,56px)}
}
/* New About photograph: street look, with the approved soft colour transition. */
.pageV2--about .profilePanel__photo img{object-position:50% 36%;transform:none}
@media(max-width:600px){.pageV2--about .profilePanel__photo img{object-position:50% 25%}}

/* Two compact book previews, with no extra hero section. */
.bookPair{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.bookPair__item{display:block;width:100%;padding:0;border:1px solid #d6d5c9;background:#faf9f5;color:#35412d;cursor:pointer;text-align:left;box-shadow:0 8px 22px #30392b10}
.bookPair__item img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.bookPair__item>span{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;font:12px/1.4 Arial,sans-serif}
.bookPair__item b{font-size:10px;font-weight:400;white-space:nowrap}
.bookPair__item:hover{border-color:#78856b}
.bookPair__item:focus-visible{outline:3px solid #7c8b66;outline-offset:4px}
.bookPair .bookPair__item:nth-child(2){margin-top:54px}
.bookSamples{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(min-width:901px){.bookPair{grid-template-columns:1fr;gap:14px;max-width:430px;margin-left:auto}.bookPair .bookPair__item{width:88%}.bookPair .bookPair__item:nth-child(2){margin-top:0;margin-left:auto}.bookPair__item>span{padding:9px 12px}}
@media(max-width:600px){.bookPair{gap:10px}.bookPair .bookPair__item:nth-child(2){margin-top:24px}.bookPair__item>span{display:block;font-size:11px;padding:8px}.bookPair__item b{display:block;margin-top:5px;font-size:10px}.bookSamples{gap:10px}}

/* Centred consultation form on Contacts. */
.pageV2--contacts .contactsFormCard{display:grid;grid-template-columns:minmax(0,1fr);gap:36px;width:100%;max-width:780px;margin-inline:auto;padding-top:48px}
.pageV2--contacts .contactsFormCard .homeSection__head{position:static;text-align:center;width:100%;max-width:none}
.pageV2--contacts .contactsFormCard .homeTag{justify-content:center}
.pageV2--contacts .contactsFormCard .homeSection__title{max-width:700px;margin-inline:auto}
.pageV2--contacts .contactsFormCard>.leadForm{width:100%;min-width:0;margin:0}
@media(max-width:600px){.pageV2--contacts .contactsFormCard{gap:26px;padding-top:30px}}

