/* V2 — coherent editorial photography, clearer service offer, quieter scale. */
.section-space{padding-block:80px}
.hero{background:#22211e}
.hero-photo{position:absolute;z-index:-3;inset:0;display:block}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% 46%}
/* At least 70% charcoal over every photo pixel: the lightest possible background
   stays below #646460, preserving contrast for all hero text. */
.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(34,33,30,.77),rgba(34,33,30,.70) 50%,rgba(34,33,30,.73)),linear-gradient(0deg,rgba(22,21,18,.26),transparent 70%)}
.hero-content{padding-top:60px;padding-bottom:22px}
.hero .eyebrow{font-size:10px;letter-spacing:.12em;color:#f4f0e7}
.hero h1{max-width:850px;margin:23px auto 0;font-size:clamp(42px,5vw,64px);line-height:1.1;letter-spacing:-.045em}
.hero h1 em{margin-top:4px;font-size:1.08em;line-height:1.14;background:none;color:#f0cd94;text-shadow:none}
.hero-description{max-width:615px;margin-top:22px;font-size:16px;line-height:1.8;color:#f4f0e7}
.hero-actions{margin-top:26px}
.hero-price,.hero-price>span{color:#f2e6d2}
.hero-facts{max-width:940px;margin-top:30px;background:rgba(27,26,23,.76);backdrop-filter:blur(8px)}
.hero-facts>div{padding:16px 20px;font-size:10px;color:#ede6d9}
.hero-facts strong{font-size:12px}
.motion-toggle{margin-bottom:0;color:#f0e6d5}
.hero-image-note{margin-bottom:18px;color:#f4f0e7;font-size:9px;line-height:1.6}
.hero-photo img{animation:hero-drift 28s ease-in-out infinite alternate}
@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
.section-intro{max-width:850px;margin-bottom:36px}
.section-intro h2{font-size:clamp(34px,3.6vw,46px);line-height:1.17;letter-spacing:-.04em}
.section-intro>p:last-child:not(.eyebrow){max-width:70ch;font-size:15px;line-height:1.8;margin-top:21px}
.feature-copy{padding:26px 30px}
.feature-copy h3{font-size:25px;line-height:1.25}
.feature-copy>p:not(.number-label):not(.feature-result){font-size:14px;line-height:1.8;margin-top:16px}
.feature-result{margin-top:20px;font-size:12px}
.feature-art{height:300px}
.feature-photo{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover}
.craft-photo{object-position:70% 45%}
.studio-photo{object-position:50% 43%}
.with-photo::after{position:absolute;inset:0;z-index:0;content:'';background:linear-gradient(180deg,rgba(24,22,17,.60),transparent 38%,rgba(24,22,17,.68))}
.with-photo .art-label{top:15px;color:#fff8ea;text-shadow:0 1px 6px #000;font-size:9px}
.with-photo .art-note{bottom:10px;color:#fff8ea;font-size:8px}
.with-photo .profile-sheet{z-index:2;top:auto;bottom:31px;left:7%;width:61%;max-width:300px;height:auto;display:block;background:rgba(255,252,243,.93);transform:rotate(-2deg);backdrop-filter:blur(8px)}
.with-photo .profile-image{display:none}
.with-photo .profile-info{padding:15px 19px}
.with-photo .profile-category{font-size:8px}
.with-photo .profile-info>strong{font-size:19px;margin-top:4px}
.with-photo .profile-line{margin-top:9px}
.with-photo .profile-line.short{margin-top:6px}
.with-photo .profile-tags{margin-top:12px;font-size:8px}
.with-photo .contact-orbit{display:none}
.with-photo .contact-tile{top:auto;bottom:31px;left:8%;width:84%;z-index:2;padding:16px 21px;background:rgba(36,33,26,.89);backdrop-filter:blur(8px);transform:rotate(1deg)}
.with-photo .contact-tile>span{color:#f1e5ce;font-size:9px}
.with-photo .contact-tile>strong{font-size:21px;margin-top:4px}
.with-photo .contact-options{margin-top:13px}
.with-photo .contact-options>span{font-size:9px;padding:8px 5px}
.section-note{max-width:90ch;font-size:10px;line-height:1.85;margin-top:22px}
.example-panel{padding:48px 56px;gap:60px}
.example-copy h2{font-size:42px}
.example-copy>p:not(.eyebrow):not(.example-disclaimer){font-size:15px}
.steps{gap:38px;margin-top:38px}
.steps h3{font-size:23px}
.steps p{font-size:14px}
.profession-line{margin-top:45px}
.price-copy h2{font-size:43px}
.price-copy>p:not(.eyebrow){font-size:15px;line-height:1.8}
.price-motif{margin-top:38px;padding-top:26px}
.price-motif>span{font-size:22px}
.price>strong{font-size:76px}
.faq-heading h2{font-size:38px}
.faq-list summary{font-size:14px;min-height:79px}
.closing h2{font-size:48px}
.closing-inner>p:not(.eyebrow):not(.closing-price){font-size:15px}

@media(max-width:1120px){
  .hero h1{font-size:56px}.hero-content{padding-top:52px}
  .example-panel{padding:40px;gap:40px}.example-copy h2{font-size:38px}
  .price-copy h2{font-size:40px}.faq-heading h2{font-size:36px}
}
@media(max-width:900px){
  .hero h1{font-size:50px}.hero-description{font-size:15px;max-width:600px}
  .hero-facts>div{padding:16px 14px}.hero-facts strong{font-size:11px}
  .feature-copy{padding:25px}.feature-copy h3{font-size:23px}
  .with-photo .profile-sheet{width:70%;left:6%;bottom:32px}
  .with-photo .profile-info{padding:14px 15px}.with-photo .profile-info>strong{font-size:17px}
  .with-photo .contact-tile{left:6%;width:88%;padding:16px}.with-photo .contact-tile>strong{font-size:20px}
  .example-panel{padding:32px;gap:32px}.example-copy h2{font-size:36px}
  .price-copy h2{font-size:36px}.price-motif>span{font-size:20px}
}
@media(max-width:767px){
  .section-space{padding-block:62px}.hero-content{padding-top:43px}
  .hero-photo img{object-position:67% 45%}.hero h1{font-size:45px}
  .hero-description{max-width:540px;font-size:15px}
  .hero .eyebrow{font-size:9px}.hero-facts strong{font-size:11px}
  .hero-facts>div{font-size:9px;padding:15px 12px}
  .section-intro h2{font-size:37px}.section-intro>p:last-child:not(.eyebrow){font-size:15px}
  .feature-art{height:280px}.feature-copy{padding:25px 22px}
  .feature-copy h3{font-size:22px}.feature-copy>p:not(.number-label):not(.feature-result){font-size:14px}
  .with-photo .art-label{font-size:8px}.with-photo .art-note{font-size:7px}
  .with-photo .profile-sheet{width:78%;bottom:28px;left:7%}
  .with-photo .profile-info{padding:13px 15px}.with-photo .profile-category{font-size:7px}
  .with-photo .profile-tags{font-size:7px;gap:4px}.with-photo .profile-tags>span{padding:3px 5px}
  .with-photo .contact-tile{left:6%;width:88%;bottom:29px;padding:16px 14px}
  .with-photo .contact-tile>strong{font-size:19px}.with-photo .contact-options>span{font-size:8px;gap:4px}
  .example-panel{padding:36px;gap:32px}.example-copy h2{font-size:37px}
  .price-copy h2{font-size:38px}.faq-heading h2{font-size:35px}
  .closing h2{font-size:40px}
}
@media(max-width:600px){
  .feature-art{height:300px}.feature-copy h3{font-size:24px}
  .with-photo .profile-sheet{width:64%;left:7%;bottom:31px}
  .with-photo .profile-info{padding:14px 17px}.with-photo .profile-category{font-size:8px}
  .with-photo .profile-tags{font-size:8px}.with-photo .profile-info>strong{font-size:18px}
  .with-photo .contact-tile{left:7%;width:86%;bottom:31px;padding:17px 21px}
  .with-photo .contact-tile>strong{font-size:22px}.with-photo .contact-options>span{font-size:9px}
  .with-photo .contact-options svg{display:block}
  .steps h3{font-size:24px}.steps p{font-size:14px}
}
@media(max-width:480px){
  .section-space{padding-block:48px}.hero-content{padding-top:33px;padding-bottom:17px}
  .hero-photo img{object-position:71% 43%;animation:none}
  .hero-shade{background:linear-gradient(180deg,rgba(34,33,30,.75),rgba(34,33,30,.72) 55%,rgba(24,23,20,.85))}
  .hero .eyebrow{max-width:34ch;font-size:8px;letter-spacing:.08em;line-height:1.8}
  .hero h1{font-size:34px;margin-top:19px;line-height:1.12;letter-spacing:-.04em}
  .hero h1 em{font-size:1.08em;line-height:1.15;margin-top:5px}
  .hero-description{max-width:34ch;font-size:14px;line-height:1.8;margin-top:21px}
  .hero-actions{margin-top:22px;gap:5px}.hero-actions>.button{font-size:14px;min-height:57px}
  .hero-actions>.text-link{font-size:11px}.hero-price{font-size:10px;margin-top:7px;line-height:1.8}
  .hero-facts{margin-top:21px}.hero-facts>div{padding:11px 16px;font-size:10px;gap:14px}
  .hero-facts strong{font-size:11px}.hero-facts .icon{width:19px;height:19px}
  .motion-toggle{font-size:9px;min-height:37px}.hero-image-note{margin-bottom:13px;font-size:8px}
  .section-intro{margin-bottom:29px}.section-intro h2{font-size:31px;line-height:1.2;margin-top:17px}
  .section-intro>p:last-child:not(.eyebrow){font-size:14px;line-height:1.85;margin-top:18px}
  .section-intro>p:last-child br{display:none}
  .feature-grid{gap:19px}.feature-art{height:282px}
  .feature-copy{padding:24px}.feature-copy h3{font-size:23px;line-height:1.25}
  .feature-copy>p:not(.number-label):not(.feature-result){font-size:14px;line-height:1.8}
  .feature-result{font-size:11px}.number-label{font-size:9px;margin-bottom:14px}
  .with-photo .profile-sheet{width:74%;left:6%;bottom:29px}
  .with-photo .profile-info{padding:13px 16px}.with-photo .profile-info>strong{font-size:17px}
  .with-photo .profile-category{font-size:7px}.with-photo .profile-tags{font-size:7px;margin-top:11px}
  .with-photo .contact-tile{left:6%;width:88%;bottom:29px;padding:15px 18px}
  .with-photo .contact-tile>strong{font-size:20px}.with-photo .contact-options>span{font-size:8px}
  .with-photo .contact-options{margin-top:11px;gap:6px}.with-photo .contact-options svg{width:12px;height:12px}
  .with-photo .art-label{font-size:8px;top:13px}.with-photo .art-note{font-size:7px;bottom:9px}
  .section-note{font-size:9px;line-height:1.85;margin-top:21px}
  .example-panel{padding:32px 25px}.example-copy h2{font-size:32px}
  .example-copy>p:not(.eyebrow):not(.example-disclaimer){font-size:14px}
  .real-profile-body h3{font-size:23px}.steps h3{font-size:23px}.steps p{font-size:14px}
  .steps>li{gap:10px 18px}.steps{gap:27px}.profession-line{margin-top:32px}
  .price-copy h2{font-size:32px}.price-copy>p:not(.eyebrow){font-size:14px;line-height:1.85}
  .price>strong{font-size:68px}.price>span{font-size:12px}
  .price-card{padding:27px 24px}.included{font-size:12px}
  .faq-heading h2{font-size:31px}.faq-heading>p:last-child{font-size:14px}
  .faq-list summary{font-size:13px;min-height:78px}.faq-list details>p{font-size:13px;line-height:1.9}
  .closing h2{font-size:33px}.closing-inner>p:not(.eyebrow):not(.closing-price){font-size:14px}
}
@media(max-width:360px){
  .hero h1{font-size:29px}.hero-description{font-size:13px}.hero .eyebrow{font-size:8px}
  .section-intro h2{font-size:28px}.feature-copy{padding:23px 21px}.feature-copy h3{font-size:22px}
  .with-photo .profile-info{padding:13px 15px}.with-photo .profile-sheet{width:80%;left:6%}
  .with-photo .contact-tile{padding:14px 15px}.with-photo .contact-tile>strong{font-size:18px}
  .with-photo .contact-options>span{font-size:7px;gap:4px}
  .price-copy h2,.example-copy h2,.faq-heading h2{font-size:28px}.closing h2{font-size:29px}
  .price-card{padding:25px 21px}.price>strong{font-size:64px}
}
@media(prefers-reduced-motion:reduce){.hero-photo img{animation:none}}

/* Opaque caption backing keeps disclosure legible independently of the photo. */
.with-photo .art-label,.with-photo .art-note{left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);padding:5px 9px;border-radius:5px;background:#26231f;color:#fff8ea;font-size:9px;line-height:1.5;text-shadow:none}
.with-photo .art-note{bottom:5px;padding-block:3px;letter-spacing:0}
