/* The approved editorial language, scoped to the second group of chapters. */
.rf-open{height:auto!important;max-height:none!important;min-height:100svh;overflow:visible!important;padding:calc(var(--header,78px) + 32px) 0 40px}
.rf-open:is(.chapter-paper,.chapter-paper-deep,.chapter-soft){background:#f3eee5!important;color:#080808;--line-dark:#d3ccc0;--line-light:#d3ccc0}
.rf-open .shell{width:min(calc(100% - 128px),1152px)}
.rf-open :is(h2,.title){font-size:clamp(36px,4.2vw,56px);font-weight:400;line-height:1.12;letter-spacing:-.03em;text-wrap:balance}
.rf-open :is(h2,.title) em{font-family:FernSerif,Georgia,serif!important;font-style:italic!important;font-weight:400!important;letter-spacing:inherit!important;color:inherit!important}
.rf-open .lede{font-size:15px;line-height:1.7;max-width: 60ch}
.rf-open .micro{font-size:13px;line-height:1.6;margin-top:32px;color:inherit;opacity:.8}
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;margin-top:40px;border-top:1px solid #d3ccc0;padding-top:28px}
.rf-open .definition-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path)>article{background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;min-height:0;height:auto;padding:0!important;transform:none!important;color:#080808}
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path):before,.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path):after,
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path)>article:before,.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path)>article:after{content:none!important}
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path) h3{font-size:20px;line-height:1.35;font-weight:600;margin:12px 0}
.rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path) p{font-size:15px;line-height:1.7;color:#605a52}
.rf-open :is(.rhythm,.campaign-process-path,.hm-process-path) b{font-size:14px;color:#605a52;letter-spacing:0}
.rf-open .campaign-process-path article>span{position:static;display:block;height:auto;padding:0}
.rf-open .campaign-process-path article>span i{display:none}
.rf-open .editorial-list article{display:grid;grid-template-columns:115px 1fr;gap:24px;padding:18px 0;border-color:#39352f}
.rf-open .editorial-list :is(b,p){font-size:15px;line-height:1.65;margin:0}
.rf-open .editorial-list p{color:#b8b2a8}
.rf-channel-pair{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.rf-channel-pair img{display:block;width:100%;height:150px;object-fit:cover;margin-bottom:20px}
.rf-channel-pair h3{font-size:19px}
.fl-refined .rf-channel-thought{font-family:FernSerif,Georgia,serif;font-style:italic;font-size:25px;line-height:1.2;color:#080808;margin:10px 0}
.rf-channel-pair ul{display:flex;gap:8px 18px;flex-wrap:wrap;list-style:none;padding:0;margin:16px 0 0;font-size:12px;color:#605a52}
.rf-campaigns .campaign-hero .display{font-size:clamp(40px,4.4vw,70px);line-height:1.05;letter-spacing:-.03em;overflow-wrap:normal;word-break:normal}
/* Keep the working accordions; their explanations are content, not footnotes. */
.rf-services :is(.hm-tasks-layout,.hm-scope-layout){grid-template-columns:.82fr 1.18fr;gap:64px;align-items:start}
.rf-services :is(.hm-task-core,.hm-task-number,.hm-service-mark){display:none}
.rf-services :is(.hm-task,.hm-service){border-radius:0;background:none;box-shadow:none}
.rf-services :is(.hm-task,.hm-service,.hm-service-stream):before{content:none}
.rf-services :is(.hm-task-toggle,.hm-service-toggle){grid-template-columns:minmax(0,1fr) 30px;gap:20px;min-height:0;padding:20px 0}
.rf-services :is(.hm-task-summary,.hm-service-summary){display:grid;grid-template-columns:1fr;gap:7px}
.rf-services :is(.hm-task-summary,.hm-service-summary) strong{font-size:19px;line-height:1.35;font-weight:600}
.rf-services :is(.hm-task-summary,.hm-service-summary) small{font-size:14px;line-height:1.5;letter-spacing:0}
.rf-services :is(.hm-task-detail-copy,.hm-service-detail-copy){grid-template-columns:1fr;gap:14px;padding:0 40px 24px 0}
.rf-services :is(.hm-task-detail,.hm-service-detail) :is(p,li){font-size:14px;line-height:1.65}
.rf-services .hm-task :is(small,p,li){color:#b8b2a8}
.rf-services .hm-service :is(small,p,li){color:#605a52}
.rf-services .hm-task-detail ul,.rf-services .hm-service-detail ul{gap:6px}
/* A personal introduction with the approved original portrait. */
.rf-about-intro{background:#080808!important}
.rf-about-shell{width:min(calc(100% - 128px),1152px);margin:auto;display:grid;grid-template-columns:1.25fr .75fr;gap:96px;align-items:center}
.rf-about-shell h1{font-size:clamp(42px,5vw,68px);font-weight:400;line-height:1.1;letter-spacing:-.03em;text-wrap:balance;margin:0 0 28px}
.rf-about-shell h1 em{display:block;font-family:FernSerif,Georgia,serif!important;font-weight:400!important;font-style:italic!important;color:#ed6b3f!important;letter-spacing:inherit!important}
.rf-about-shell p{font-size:16px;line-height:1.7;color:#b8b2a8}
.rf-about-shell .button{margin-top:24px}
.rf-person img{width:104px;height:104px;object-fit:cover;object-position:center 36%;border-radius:50%}
.rf-person h2{font-size:21px;font-weight:400;margin:20px 0 8px}
.rf-person>p{font-size:14px}
.rf-person dl{margin-top:28px}
.rf-person dl>div{padding:18px 0;border-top:1px solid #39352f}
.rf-person dt{font-size:22px;font-family:FernSerif,Georgia,serif;font-style:italic}
.rf-person dd{font-size:14px;color:#b8b2a8;margin:7px 0 0}
.rf-about .concept-layout{gap:64px;align-items:start}
.rf-work-photo{margin:26px 0 0}
.rf-work-photo img{width:100%;height:175px;object-fit:cover;object-position:center 48%;display:block;border-radius:0}
.rf-about .concept-ledger article{grid-template-columns:1fr;padding:20px 0;border-color:#d3ccc0}
.rf-about .concept-ledger article>b,.rf-about .concept-ledger article>span{display:none}
.rf-about .concept-ledger h3{font-size:20px;margin-bottom:8px}
.rf-about .concept-ledger p{font-size:15px;line-height:1.6;color:#605a52}
/* Social controls stay outside the simulated device at a usable size. */
.fl-social main>section.chapter{height:auto;min-height:100svh;max-height:none;overflow:visible}
.fl-social #kanal{padding:calc(var(--header,78px) + 24px) 64px 40px;gap:48px}
.fl-social #kanal h1{font-size:clamp(42px,4.8vw,68px);line-height:1.08;letter-spacing:-.03em}
.fl-social #kanal h1 em{display:block}
.fl-social .hero-lede{font-size:15px;line-height:1.7}
.fl-social .rf-social-controls{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0;border:0;padding:0;width:auto;height:auto;background:none}
.fl-social .rf-social-controls button{font:inherit;font-size:15px;min-height:44px;padding:10px 16px;border:1px solid #605a52;border-radius:0;flex:none;color:#f3eee5;background:none;letter-spacing:0}
.fl-social .rf-social-controls button[aria-selected="true"]{background:#f3eee5;color:#080808;border-color:#f3eee5}
.fl-social .rf-social-controls button i,.fl-social .rf-social-controls button:after{display:none}
.fl-social .rf-social-controls button:focus-visible{outline:2px solid #ed6b3f;outline-offset:4px}
.fl-social .channel-caption p,.fl-social #channel-message{font-size:14px;line-height:1.6}
.rf-guest-questions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;border-top:1px solid #d3ccc0;padding-top:28px}
.rf-guest-questions h3{font-size:17px;margin-bottom:18px}
.fl-refined .rf-question{font:italic 28px/1.2 FernSerif,Georgia,serif;color:#080808;margin:0 0 18px;min-height:3.6em}
.fl-social #produktion{display:block;padding:calc(var(--header,78px) + 32px) 64px 40px;background:#f3eee5!important;color:#080808}
.fl-social #produktion .system-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:64px;margin-bottom:32px}
.fl-social #produktion .system-heading p{font-size:15px;line-height:1.7;color:#605a52}
.fl-social #produktion .system-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;border-top:1px solid #d3ccc0;padding-top:24px}
.fl-social #produktion .system-axis,.fl-social #produktion .system-board article>b{display:none}
.fl-social #produktion .system-board article{display:block;border:0;border-radius:0;background:none;padding:0;min-height:0;height:auto;transform:none}
.fl-social #produktion .system-board article:before,.fl-social #produktion .system-board article:after{content:none}
.fl-social #produktion .system-board strong{font-size:18px;line-height:1.35;color:#080808}
.fl-social #produktion .system-board :is(small,span){display:block;position:static;font-size:14px;line-height:1.6;color:#605a52;margin-top:10px}
.fl-social #produktion .shot-strip{margin-top:28px;gap:12px}
.fl-social #produktion .shot-strip figure{height:125px;border-radius:0}
/* Real form controls remain recognizable and comfortably readable. */
.contact-form :is(input,select,textarea){font-size:16px!important;line-height:1.5}
.contact-form label,.contact-form legend{font-size:13px;line-height:1.5;letter-spacing:.02em}
.contact-form .form-submit{font-size:14px;min-height:48px;letter-spacing:.03em}
.contact-form .form-options label,.contact-form .choice-label{font-size:14px}
.contact-form :is(input,textarea)::placeholder{color:#605a52;opacity:1}
.rf-open :focus-visible{outline:2px solid #ed6b3f;outline-offset:4px}
@media(max-width:1099px){
  .rf-open .shell,.rf-about-shell{width:calc(100% - 64px)}
  .rf-services :is(.hm-tasks-layout,.hm-scope-layout),.rf-about-shell{grid-template-columns:1fr;gap:40px}
  .rf-open :is(.rhythm,.campaign-process-path,.hm-process-path){grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rf-open .definition-cards,.rf-guest-questions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fl-social #kanal{grid-template-columns:1fr;padding:100px 32px 48px}
  .fl-social #produktion{padding-inline:32px}
  .fl-social #produktion .system-heading{grid-template-columns:1fr;gap:24px}
  .fl-social #produktion .system-board{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fl-social{scroll-snap-type:none!important}
}
@media(max-width:700px){
  .rf-open{min-height:0;padding:96px 0 48px}
  .rf-open .shell,.rf-about-shell{width:calc(100% - 48px)}
  .rf-open :is(h2,.title){font-size:38px}
  .rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path),.rf-channel-pair,.rf-guest-questions{grid-template-columns:1fr!important;gap:28px}
  .rf-open :is(.definition-cards,.rhythm,.campaign-process-path,.hm-process-path)>article+article,.rf-guest-questions article+article{border-top:1px solid #d3ccc0!important;padding-top:24px!important}
  .rf-services :is(.hm-task-detail-copy,.hm-service-detail-copy){padding-right:0}
  .rf-about-shell h1{font-size:44px}
  .rf-person img{width:80px;height:80px}
  .rf-about .concept-layout{grid-template-columns:1fr;gap:32px}
  .rf-work-photo img{height:230px}
  .fl-social #kanal{padding-inline:24px}
  .fl-social #kanal h1{font-size:42px}
  .fl-refined .rf-question{min-height:0}
  .fl-social #produktion{padding:96px 24px 48px}
  .fl-social #produktion .system-board{grid-template-columns:1fr}
  .fl-social #produktion .shot-strip{grid-template-columns:repeat(2,1fr)}
  .fl-social #produktion .shot-strip figure{height:160px}
}
@media(max-height:699px){.fl-social{scroll-snap-type:none!important}}

/* Confirmation fixes: descriptive copy lives outside the device. */
.fl-social .phone-shell{height:clamp(460px,calc(100svh - 275px),650px);min-height:0}
.fl-social .channel-insight{display:block;width:min(100%,440px);margin:16px auto 0;min-height:0;padding:0}
.fl-social .channel-insight small{font-size:12px;letter-spacing:.04em;color:#ed6b3f}
.fl-social .channel-insight p{font-size:14px;line-height:1.6;margin-top:8px;color:#b8b2a8}
.fl-social .channel-note{font-size:11px;line-height:1.5;max-width:440px;text-align:left;color:#b8b2a8}
.contact-chapter{height:auto!important;max-height:none!important;overflow:visible!important}
.contact-form .reason-option span{font-size:14px;line-height:1.4}
.contact-form .privacy span,.contact-form .form-note{font-size:13px;line-height:1.5}
.rf-services .hm-scope-layout .hm-service-toggle{padding:16px 0}
.rf-services .hm-service-detail-copy{padding-bottom:18px}
@media(max-width:1099px){.fl-social .phone-shell{height:560px;max-height:75svh}}

/* Phone refinement only: preserve desktop composition and chapter-scroll behavior. */
@media(max-width:700px){
  .home-hero .hero-shell{width:calc(100% - 48px);padding-top:calc(var(--header,68px) + 28px);padding-bottom:36px}
  .home-hero .hero-copy{min-height:calc(100svh - var(--header,68px) - 56px);display:flex;flex-direction:column;justify-content:center;padding-bottom:32px}
  .home-hero .hero-copy .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.12em;margin-bottom:22px}
  .home-hero .hero-copy h1{font-size:clamp(34px,10.7vw,46px);line-height:1.08;letter-spacing:-.055em}
  .home-hero .hero-copy .hero-lede{font-size:16px;line-height:1.65;margin-top:24px}
  .home-hero .hero-results{margin-top:20px;font-size:15px;line-height:1.5}
  .home-hero .hero-offer-link{display:inline-flex;align-items:center;min-height:44px}
  .home-hero .guest-entry{margin-top:28px;padding-top:28px;border-top:1px solid rgba(243,238,229,.25)}
  .home-hero .wish-meta{align-items:flex-start;flex-direction:column;gap:8px;font-size:11px;line-height:1.5}
  .home-hero .wish-meta small{font-size:10px;line-height:1.5}
  .home-hero .wish-intro{font-size:14px;line-height:1.65;margin:16px 0}
  .home-hero .wish-input-row{grid-template-columns:minmax(0,1fr) auto;padding-left:14px}
  .home-hero .wish-input-row .wish-mark{display:none}
  .home-hero .wish-input-row input{font-size:16px;min-width:0}
  .home-hero .hero-seo-bridge{margin:32px 0;padding-top:24px;gap:16px}
  .home-hero .hero-seo-kicker{font-size:10px}
  .home-hero .hero-seo-bridge h2{font-size:24px;line-height:1.25}
  .home-hero .hero-seo-bridge>p{font-size:14px;line-height:1.65}
  .home-hero .hero-seo-bridge>p strong{font-size:10px;line-height:1.7}
  .home-hero .world-choice{min-height:84px}
  .home-hero .world-choice strong{font-size:11px;line-height:1.35}
  .home-hero .world-choice small{font-size:9px;line-height:1.4}
  .fl-editorial #reise .ed-a-services{grid-template-columns:1fr;gap:0}
  .fl-editorial #reise .ed-a-services article{padding:26px 0;border-bottom:1px solid #d3ccc0}
  .fl-editorial #reise .ed-a-services article:last-child{border-bottom:0;padding-bottom:0}
  .fl-editorial #reise .ed-guest{min-height:0;font-size:28px;line-height:1.2}
  .fl-editorial #reise .ed-a-services h3{font-size:18px}
  .fl-editorial #reise .ed-explanation{font-size:16px;line-height:1.65}
  .fl-editorial #reise .ed-deliverable{font-size:13px;line-height:1.6}
  .rf-services .hm-hero{min-height:0!important;padding:calc(var(--header,68px) + 32px) 0 40px}
  .rf-services .hm-hero .shell{width:calc(100% - 48px)}
  .rf-services .hm-hero-layout{padding-top:0;gap:32px}
  .rf-services .hm-hero .display{font-size:clamp(32px,10.2vw,44px);line-height:1.1;letter-spacing:-.04em}
  .rf-services .hm-hero .display br{display:none}
  .rf-services .hm-hero .display em{font-size:1em;line-height:1.1}
  .rf-services .hm-hero .lede{font-size:16px;line-height:1.65;margin-top:24px}
  .rf-services .hm-hero .actions{margin-top:24px}
  .rf-services .hm-hero-visual{height:auto;aspect-ratio:4/3;margin-top:0}
  .rf-services .hm-hero-visual:before,.rf-services .hm-hero-visual:after{display:none}
}

/* Remaining phone layouts: desktop rules and chapter controllers stay untouched. */
@media(max-width:700px){
  .mobile-subpages main .shell{width:calc(100% - 48px)}
  .mobile-subpages main>.chapter{height:auto;min-height:100svh;max-height:none}
  .mobile-subpages main h1{font-size:clamp(32px,10.2vw,44px)!important;line-height:1.12!important;letter-spacing:-.04em!important;overflow-wrap:break-word;hyphens:none;text-wrap:balance}
  .mobile-subpages main h1 br{display:none}
  .mobile-subpages main h1 em{line-height:inherit;letter-spacing:inherit}
  .mobile-subpages main .title{font-size:clamp(30px,9.5vw,38px);line-height:1.15;letter-spacing:-.03em;overflow-wrap:break-word;hyphens:auto}
  .mobile-subpages main :is(.lede,.offer-body){font-size:16px;line-height:1.7}
  .mobile-subpages main :is(.micro,.offer-trust){font-size:14px;line-height:1.65}
  .mobile-subpages main .button{min-height:48px;max-width:100%;white-space:normal;text-align:center;font-size:11px;line-height:1.5}
  .mobile-subpages :is(.ga-hero,.meta-hero,.consulting-hero,.campaign-hero){padding-top:calc(var(--header,68px) + 32px)}
  .mobile-subpages :is(.ga-hero-layout,.meta-hero-layout,.consulting-hero-layout,.campaign-hero-layout){gap:32px}
  .mobile-subpages :is(.ga-hero-copy,.meta-hero-copy){padding-top:0}
  .mobile-subpages .campaign-hero-image{height:380px;margin-top:0}
  .mobile-subpages .fl-refined :is(p,dd),.mobile-subpages .rf-open .lede{font-size:16px;line-height:1.7}
  .mobile-subpages .fl-refined .fr-statement,.mobile-subpages .fl-refined .rf-question{font-size:27px;line-height:1.25}
  .mobile-subpages .fl-refined .rf-channel-thought{font-size:25px;line-height:1.25}
  .mobile-subpages .fl-refined .fr-note{font-size:13px}
  .mobile-subpages .rf-open :is(.definition-cards,.rhythm,.campaign-process-path) p{font-size:16px}
  /* Hotel worlds keep their image transitions and all eight choices. */
  .mobile-subpages .world-hero{padding-top:calc(var(--header,68px) + 32px)}
  .mobile-subpages .world-selector-layout{height:auto;grid-template-rows:auto auto;gap:28px}
  .mobile-subpages .world-current{height:auto;display:flex;flex-direction:column;gap:12px}
  .mobile-subpages .world-current[data-world-style] h1{height:auto;min-height:0;margin:28px 0 8px}
  .mobile-subpages .world-kicker,.mobile-subpages .world-current .world-terms{font-size:11px;line-height:1.5}
  .mobile-subpages .world-current .world-idea{font-size:16px;line-height:1.65}
  .mobile-subpages .world-option{min-height:60px;grid-template-columns:18px minmax(0,1fr);gap:6px}
  .mobile-subpages .world-option b{font-size:10px}
  .mobile-subpages .world-option span{font-size:12px;line-height:1.4}
  .mobile-subpages .rf-open .editorial-list article{grid-template-columns:1fr;gap:8px}
  /* Explanatory panels use readable text without enlarging decorative numbers. */
  .mobile-subpages :is(.ga-intent-map,.ga-ledger,.ga-rhythm-layout,.ga-rhythm-heading,.ga-rhythm-list){min-width:0;max-width:100%}
  .mobile-subpages .ga-rhythm-layout{grid-template-columns:minmax(0,1fr)}
  .mobile-subpages .ga-rhythm-list li{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:20px 0 20px 20px}
  .mobile-subpages .ga-rhythm-list span{min-width:0;grid-template-columns:minmax(0,1fr)}
  .mobile-subpages .ga-rhythm-list strong{font-size:16px;line-height:1.4}
  .mobile-subpages .ga-rhythm-list small{font-size:14px;line-height:1.6}
  .mobile-subpages :is(.ga-intent-map p,.ga-account-note,.ga-ledger article small,.search-step small){font-size:14px;line-height:1.65}
  .mobile-subpages .ga-intent-map h3{font-size:20px;margin-top:24px}
  .mobile-subpages .ga-intent-map small{font-size:11px;letter-spacing:.04em}
  .mobile-subpages .ga-ledger article strong{font-size:16px;line-height:1.4}
  .mobile-subpages .ga-ledger article em{font-size:11px}
  .mobile-subpages .ga-query{font-size:14px;line-height:1.5;min-height:64px;height:auto}
  .mobile-subpages .search-step strong{font-size:15px;line-height:1.5}
  .mobile-subpages .ga-search-stage .search-status{font-size:12px;line-height:1.6}
  .mobile-subpages :is(.meta-story p,.meta-format-detail p,.meta-rhythm p,.format-copy>p){font-size:16px;line-height:1.7}
  .mobile-subpages :is(.meta-format-detail li,.format-copy li){font-size:12px;line-height:1.5}
  /* Campaign and about-page controls remain the same working tabs/accordions. */
  .mobile-subpages .origin-steps{grid-template-columns:1fr;gap:0}
  .mobile-subpages .origin-steps:before{display:none}
  .mobile-subpages .origin-steps button{grid-template-columns:12px 28px minmax(0,1fr);justify-items:start;text-align:left;min-height:48px;gap:10px}
  .mobile-subpages .origin-steps button span{font-size:14px}
  .mobile-subpages .origin-card{min-height:0;padding:24px}
  .mobile-subpages .origin-card p,.mobile-subpages .anatomy-detail p{font-size:16px;line-height:1.7}
  .mobile-subpages .origin-card li,.mobile-subpages .anatomy-detail li{font-size:12px;line-height:1.5}
  .mobile-subpages .anatomy-item button strong{font-size:16px;line-height:1.4}
  .mobile-subpages .anatomy-detail>div{padding-left:16px;padding-right:16px}
  .mobile-subpages .format-tabs{display:flex;flex-wrap:wrap}
  .mobile-subpages .format-tabs button{min-height:48px;flex:1 1 40%;font-size:13px}
  .mobile-subpages :is(.landing-copy p,.email-paper p){font-size:14px;line-height:1.6}
  .mobile-subpages :is(.experience-panel p,.leadership-principles p,.origin-text p,.concept-ledger p){font-size:16px;line-height:1.7}
  .mobile-subpages .experience-tab{font-size:14px;line-height:1.5;min-height:64px}
  .mobile-subpages .experience-panel{min-height:0}
  .mobile-subpages .experience-panel h3{font-size:32px;line-height:1.15}
  .mobile-subpages .experience-panel footer{font-size:13px;line-height:1.6;padding-right:0}
  /* Hotel consulting and working method. */
  .mobile-subpages :is(.consulting-system-result,.system-disclaimer,.decision-board-foot,.avvicenda-detail){font-size:14px;line-height:1.65}
  .mobile-subpages .decision-board article p{font-size:16px;line-height:1.65}
  .mobile-subpages .decision-board article>span{font-size:12px}
  .mobile-subpages .consulting-system-list :is(strong,span){font-size:14px;line-height:1.6}
  .mobile-subpages .consulting-process-path p{font-size:16px;line-height:1.7}
  .mobile-subpages :is(.principle-pair,.model-pair,.after-grid) p{font-size:16px;line-height:1.7}
  .mobile-subpages .phase-panel{min-height:0;padding:24px}
  .mobile-subpages .phase-panel p{font-size:16px;line-height:1.7}
  .mobile-subpages .phase-panel h2{font-size:30px;line-height:1.2;hyphens:auto}
  .mobile-subpages .phase-button span{font-size:15px}
  .mobile-subpages .phase-output{font-size:12px;line-height:1.5}
  .mobile-subpages .ownership-list article{min-width:0}
  .mobile-subpages .ownership-list :is(p,small){font-size:14px;line-height:1.6}
  /* Newsletter and social previews keep their own native scrolling. */
  .mobile-subpages.fl-newsletter :is(#ausgabe,#signale,#rhythmus),
  .mobile-subpages.fl-social :is(#formate,#reydel){padding-inline:24px}
  .mobile-subpages.fl-newsletter :is(.issue-copy,.issue-composition,.signals-copy,.signal-system,.rhythm-copy,.rhythm-path),
  .mobile-subpages.fl-social :is(.format-copy,.format-stage,.reydel-story){min-width:0;max-width:100%}
  .mobile-subpages.fl-newsletter :is(.issue-copy h2,.signals-copy h2,.rhythm-copy h2,.closing-inner h2),
  .mobile-subpages.fl-social :is(.format-copy h2,.reydel-story h2,.closing h2){font-size:clamp(30px,9.5vw,38px);line-height:1.15;letter-spacing:-.03em;hyphens:auto}
  .mobile-subpages.fl-newsletter :is(.issue-copy>p:not(.eyebrow),.signals-copy>p:not(.eyebrow),.rhythm-copy>p:not(.eyebrow),.issue-preview-copy p),
  .mobile-subpages.fl-social :is(.format-copy>p:not(.eyebrow),.reydel-story>p:not(.eyebrow),.closing-inner>p:not(.eyebrow)){font-size:16px;line-height:1.7}
  .mobile-subpages.fl-newsletter .issue-tabs button{min-height:48px;font-size:14px;white-space:normal}
  .mobile-subpages.fl-newsletter .signal-tabs button{min-height:76px;gap:10px;grid-template-columns:8px minmax(0,1fr) auto}
  .mobile-subpages.fl-newsletter .signal-tabs :is(b,small){font-size:13px;line-height:1.5}
  .mobile-subpages.fl-newsletter .signal-result strong{font-size:14px;line-height:1.7}
  .mobile-subpages.fl-newsletter .rhythm-path :is(p,small){font-size:14px;line-height:1.6}
  .mobile-subpages.fl-newsletter #anfang .mail-body p{font-size:14px;line-height:1.65}
  .mobile-subpages.fl-social .channel-note{font-size:12px;line-height:1.65}
  .mobile-subpages.fl-social .format-controls button{min-height:48px;font-size:13px;line-height:1.5}
  .mobile-subpages.fl-social .format-explanation p{font-size:16px;line-height:1.7}
  .mobile-subpages.fl-social .format-explanation li{font-size:12px;line-height:1.5}
  .mobile-subpages .contact-assurance{font-size:14px;line-height:1.6}
  .mobile-subpages .form-heading p,.mobile-subpages .contact-form .form-response{font-size:14px;line-height:1.6}
  /* The footer grows with its touch targets rather than clipping into a fixed height. */
  .mobile-subpages main>section:last-child{display:block;padding-bottom:0!important}
  .mobile-subpages main>section:last-child>.shell{transform:none!important}
  .mobile-subpages main>section:last-child>.production-footer{position:relative!important;inset:auto!important;height:auto!important;min-height:0!important;margin-top:48px!important}
  .mobile-subpages main>section:last-child>.production-footer .production-footer-inner{width:calc(100% - 48px);grid-template-columns:minmax(0,1fr);padding:28px 0;gap:20px}
  .mobile-subpages main>section:last-child>.production-footer nav{grid-template-columns:repeat(2,minmax(0,1fr));font-size:12px;gap:0 16px;white-space:normal}
  .mobile-subpages .production-footer a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.5}
  .mobile-subpages .production-footer .footer-legal{gap:4px 16px;white-space:normal}
  .mobile-subpages .production-footer .footer-brand small{font-size:10px;line-height:1.6}
  /* Continuous reading pages retain their typography, with safer narrow-word wrapping. */
  .blog-page :is(.blog-index-hero h1,.article-hero h1){font-size:clamp(32px,10.2vw,40px);line-height:1.14;hyphens:auto;overflow-wrap:break-word}
  .blog-page :is(.blog-card h2,.article-content h2,.article-next p){font-size:clamp(28px,8.7vw,34px);line-height:1.2;hyphens:auto;overflow-wrap:break-word}
  .blog-page .article-content :is(h3,a){overflow-wrap:anywhere}
  .blog-page .article-sidebar a{display:inline-block;padding-block:10px;min-height:44px}
  .blog-page .article-faq-list summary{font-size:16px;line-height:1.5;min-height:48px}
  .blog-page .article-table-wrap{overscroll-behavior-x:contain}
  .utility-main h1{font-size:clamp(32px,10.2vw,40px);line-height:1.15;overflow-wrap:break-word;hyphens:auto}
  .utility-main .legal-meta{font-size:13px;line-height:1.6}
  .utility-main :is(p,li){overflow-wrap:anywhere}
}

/* Shared photographic framing across the original homepage and service overview. */
:root{--editorial-image-radius:24px}
.home-world-tile,.home-world-tile:nth-child(n),.home-work-photo,.home-insight-card,.home-insight-card:nth-child(n),.hm-hero-visual>img,.hm-direction-photo>img{border-radius:var(--editorial-image-radius)!important}
.home-insight-card figure{align-self:center;aspect-ratio:4/3;height:auto;margin-left:12px;border-radius:12px}
.home-insight-card figure img{display:block;aspect-ratio:4/3;height:auto}
@media(max-width:700px){:root{--editorial-image-radius:20px}}
