/* Mobile composition within the accepted Cormorant / Lora design system. */
@media(max-width:700px){
 .wrap{width:calc(100% - 40px)}
 .site-header{padding:5px 16px 8px;gap:4px 8px;min-height:0}
 .site-header .brand{min-height:48px;gap:2px}
 .site-header .brand>svg{width:96px;height:70px;margin:-11px -4px -11px -5px;transform:translateY(6px)}
 .site-header .brand .wordmark>span{font-size:25px;letter-spacing:-.02em}
 .site-header .brand .wordmark small{font-size:13px;margin-top:3px}
 .site-header .header-cta{min-height:44px;padding:8px 16px;font-size:22px}
 .site-header .menu-toggle{justify-content:center;align-items:center;padding:10px}
 .site-header .mobile-nav:not([hidden]){padding:5px 22px 15px;max-height:calc(100dvh - var(--gp-header-height));overscroll-behavior:contain}
 .site-header .mobile-nav ul{counter-reset:mobile-sections}
 .site-header .mobile-nav a{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:center;min-height:52px;padding:11px 0;font:500 25px/1.1 var(--serif)}
 .site-header .mobile-nav a::before{counter-increment:mobile-sections;content:'0' counter(mobile-sections);font:450 10px/1 var(--body);letter-spacing:.08em;opacity:.65}
 .site-header .mobile-nav li:nth-child(3) a{font-size:22px;line-height:1.15}
 .site-header .mobile-nav a[aria-current=location]{color:var(--deep);background:color-mix(in srgb,var(--accent) 5%,transparent)}
 .site-header .header-phone-panel{padding:13px 16px 11px}
 .header-phone,.header-email{display:inline-flex;align-items:center;min-height:44px}
 .header-phone{font-size:27px}.header-email{font-size:21px}
 .messenger-link{width:44px;height:44px}.messenger-link>svg{width:23px;height:23px}
 .header-messengers{gap:12px}
 .header-scroll-cue{width:44px;height:40px;top:calc(100% + 1px);right:4px}

 .hero-approved .hero-copy{padding:30px 20px 24px}
 .hero-approved h1{font-size:clamp(28px,8.8vw,45px);line-height:.97;letter-spacing:-.022em}
 .hero-approved .hero-question{font-size:clamp(24px,6.6vw,31px);line-height:1.08;margin:20px 0 7px}
 .hero-approved .hero-answer{font-size:clamp(32px,9.4vw,47px);line-height:.96}
 .hero-approved .hero-description{font-size:15px;line-height:1.4;margin-top:18px}
 .hero-approved .hero-actions{margin-top:20px;gap:7px;align-items:stretch}
 .hero-approved .hero-actions>.button{width:100%;justify-content:space-between;min-height:50px;padding:12px 18px;font-size:23px}
 .hero-approved .hero-actions>.text-link{min-height:44px;justify-content:space-between;font-size:14px;padding:9px 0}
 .hero-approved .hero-note{padding:24px 20px 25px}
 .hero-approved .hero-note>.eyebrow{margin-bottom:18px;padding-bottom:8px;font-size:10px}
 .hero-approved .hero-profile{width:100%;max-width:none}
 .hero-approved .hero-profile h2{font-size:42px;line-height:.96;max-width:270px}
 .hero-approved .hero-role{font-size:23px;line-height:1.08;margin-top:9px;max-width:250px}
 .hero-approved .short-rule{margin:15px 0 16px}
 .hero-approved .hero-biography{max-width:390px;font-size:14px;line-height:1.4}
 .hero-approved .hero-biography p+p{margin-top:12px}
 .hero-approved .experience-years{margin-top:18px;padding-top:13px;gap:14px}
 .hero-approved .experience-years strong{font-size:54px}
 .hero-approved .experience-years span{font-size:12px;line-height:1.2}
 .hero-approved .hero-portrait-area:not(.has-owner-photo){inset:12% -10% 0 36%;opacity:.24}

 :is(#services,#experience,#industry,#formats,#journal,#contact).section{padding-block:30px}
 :is(#services,#experience,#formats,#journal,#contact) h2{font-size:35px;line-height:1.04;text-wrap:balance}
 :is(#services,#experience,#industry,#formats,#journal,#contact) .eyebrow{font-size:10px;line-height:1.45;margin-bottom:16px;letter-spacing:.12em}
 #services .section-heading,#formats .section-heading,#journal .section-heading{margin-bottom:20px}
 #services .services-guidance{padding-left:14px;margin-top:20px}
 #services .services-guidance-lead{font-size:24px;line-height:1.14}
 #services .services-guidance-text{font-size:15px;line-height:1.4;margin-top:12px}
 #services .service>summary{grid-template-columns:28px minmax(0,1fr) 20px;column-gap:10px;row-gap:9px;padding-block:16px}
 #services .service>summary h3{grid-column:2/-1;font-size:28px;line-height:1.05}
 #services .service>summary .service-excerpt{grid-column:1/-1;font-size:15px;line-height:1.4}
 #services .service>summary .service-more{grid-column:1/3;font-size:13px;padding-block:3px}
 #services .service>summary .plus{align-self:center;font-size:25px}
 #services .service-content{font-size:16px;line-height:1.4;padding-bottom:22px}
 #services .service-content p{line-height:1.4}
 #services .service-content h4{font-size:26px;line-height:1.1;margin-block:20px 10px}
 #services .service-content .text-link{min-height:44px;margin-top:18px}

 #experience .experience-intro{margin-top:20px;font-size:16px;line-height:1.4}
 #experience .experience-lead{font-size:25px;line-height:1.15}
 #experience .experience-context,#experience .experience-intro p+p{margin-top:13px}
 #experience .text-link{font-size:23px;min-height:44px;margin-top:17px}
 #experience .experience-points{padding:18px 16px;margin-top:21px}
 #experience .experience-competence>summary{min-height:48px;align-items:center;grid-template-columns:12px minmax(0,1fr) 16px;gap:10px}
 #experience .experience-competence h3{font-size:26px;line-height:1.08}
 #experience .competence-dash{margin-top:0}
 #experience .competence-sign{align-self:start;margin-top:4px}
 #experience .experience-competence+.experience-competence{margin-top:13px;padding-top:13px}
 #experience .competence-copy{font-size:15px;line-height:1.4;padding-top:15px}
 #experience .competence-copy p+p{margin-top:11px}

 #industry h2{font-size:35px;line-height:1.04;text-wrap:balance}
 #industry .industry-layout .industry-subtitle{font-size:23px;line-height:1.13;margin-top:17px}
 #industry .industry-intro{margin-top:19px}
 #industry .industry-intro-lead{font-size:21px;line-height:1.22}
 #industry .industry-intro-closing{font-size:15px;line-height:1.4}
 #industry .industry-context{margin-block:16px}
 #industry .industry-context>summary{min-height:44px;justify-content:space-between;width:100%;font-size:23px;line-height:1.1;gap:15px}
 #industry .industry-context-copy{font-size:15px;line-height:1.4}
 #industry .button-outline{min-height:48px;display:flex;justify-content:space-between;font-size:23px;padding:11px 16px;margin-top:17px}
 #industry .industry-stages{margin-top:22px}
 #industry .industry-stage>summary{padding-block:15px}
 #industry .industry-stage h3{font-size:27px;line-height:1.08}
 #industry .stage-summary{font-size:15px;line-height:1.4;margin-top:9px}
 #industry .industry-copy{font-size:15px;line-height:1.4}

 #formats .section-heading>.format-guidance{margin-top:17px;padding-top:17px}
 #formats .format-guidance-lead{font-size:24px;line-height:1.15;padding-bottom:9px}
 #formats .format-guidance-text{font-size:15px;line-height:1.4;margin-top:13px}
 #formats .format-card{padding:16px 16px 13px;column-gap:12px;row-gap:11px}
 #formats .format-card h3{font-size:27px;line-height:1.06}
 #formats .format-card svg{width:25px;height:25px}
 #formats .format-card .format-excerpt{font-size:15px;line-height:1.4}
 #formats .format-card .format-toggle{font-size:23px;min-height:44px}
 #formats .format-card:focus-within{transform:none}
 #formats .format-terms{gap:14px;margin-top:20px;padding-top:18px}
 #formats .format-terms h3{font-size:28px;line-height:1.08}
 #formats .format-terms-copy{font-size:15px;line-height:1.4}
 #formats .format-terms-copy>p:nth-child(2){font-size:24px;line-height:1.16;margin-block:11px}
 #formats .format-panel-copy{font-size:15px;line-height:1.4}

 #journal .section-heading>div>p:not(.eyebrow),#journal .articles article p:not(.eyebrow){font-size:15px;line-height:1.4}
 #journal .articles h3{font-size:29px;line-height:1.08}
 #journal .articles article .eyebrow{font-size:10px;margin-bottom:11px}
 #journal .articles .text-link,#journal .section-heading .text-link{min-height:44px;font-size:16px}
 #journal .articles article+article{margin-top:22px}

 #contact .contact-layout{gap:20px}
 #contact .contact-layout>div>p:not(.eyebrow){font-size:16px;line-height:1.4;margin-top:16px}
 #contact .contact-direct{gap:2px;margin-top:14px}
 #contact .header-phone{font-size:28px}
 #contact .header-email{font-size:22px}
 #contact .contact-notes{font-size:11px;line-height:1.4;margin-top:18px;gap:10px}
 #contact .local-form-note{font-size:12px;line-height:1.4}
 #contact .contact-form{gap:12px}
 #contact .contact-form :is(input:not([type=checkbox]),textarea){font-size:16px;line-height:1.4;min-height:50px;padding:13px 14px}
 #contact .contact-form :is(input,textarea){scroll-margin-top:calc(var(--gp-header-height) + 12px)}
 #contact .contact-form :is(input,textarea)::placeholder{font-size:15px}
 #contact .contact-form textarea{min-height:120px}
 #contact .contact-form .form-help{font-size:13px;line-height:1.4}
 #contact .consent{min-height:44px;align-items:start;font-size:13px;line-height:1.4;gap:10px;padding-block:3px}
 #contact .consent input{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--accent)}
 #contact .contact-form .button{min-height:52px;font-size:22px;justify-content:space-between;padding:12px 16px}
 .site-footer-home .footer-bottom{font-size:11px;line-height:1.4}
 .site-footer-home .footer-bottom>div{gap:0;margin-top:6px}
 .site-footer-home .footer-bottom>div>a{display:flex;align-items:center;min-height:36px;width:fit-content}
 .site-footer-home .footer-top-link{width:44px;min-height:44px;top:3px;right:16px}
 .about-dialog{max-height:min(820px,90dvh)}
 .about-close-form{top:5px;right:6px}.about-close{min-height:44px;padding:10px}
 .about-sheet{padding:44px 21px 17px}
 .about-chapter>summary{min-height:48px}
 .about-footer .text-link{min-height:44px}
 .article-actions .text-link,.practice-article>.back-link{min-height:44px}
 .practice-article .article-heading h1{font-size:38px;line-height:1.03}
}

/* Only inserted for compact reading; all paragraphs remain in their original order. */
.mobile-approach{margin:16px 0;border-block:1px solid var(--line);padding:0}
.mobile-approach>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:8px 0;list-style:none;color:var(--accent);font:500 24px/1.1 var(--serif);cursor:pointer}
.mobile-approach>summary::-webkit-details-marker{display:none}
.mobile-approach>summary::after{content:'+';font:400 23px/1 var(--serif);flex:none}
.mobile-approach[open]>summary::after{content:'−'}
.mobile-approach>p{margin-top:12px!important}
.mobile-approach>p:last-child{margin-bottom:16px}
@media(min-width:701px) and (max-width:900px){
 .hero-approved .hero-profile{width:88%;max-width:none}
 .hero-approved .hero-profile h2{font-size:35px}
 .hero-approved .hero-role{font-size:22px;line-height:1.1}
 .hero-approved .hero-biography{font-size:14px;line-height:1.4}
 .hero-approved .hero-biography p+p{margin-top:14px}
 .hero-approved .hero-description{font-size:15px;line-height:1.4}
 .hero-approved .experience-years strong{font-size:52px}
 .hero-approved .experience-years span{font-size:12px}
 #experience.section{padding-block:34px}
 #experience .experience-layout{display:block}
 #experience h2{font-size:42px;line-height:1.04;max-width:680px}
 #experience .experience-intro{font-size:17px;line-height:1.4;margin-top:22px;max-width:680px}
 #experience .experience-lead{font-size:28px;line-height:1.15;max-width:650px}
 #experience .experience-points{margin-top:25px;padding:22px 24px}
 #experience .experience-competence>summary{min-height:44px;align-items:center}
 #experience .competence-dash{margin-top:0}
 #experience .experience-competence+.experience-competence{margin-top:15px;padding-top:15px}
}
@media(max-width:360px){
 .site-header{padding-inline:12px}.site-header .brand>svg{width:78px;height:64px;margin-block:-8px}
 .site-header .brand .wordmark>span{font-size:23px}.site-header .brand .wordmark small{font-size:12px}
 .wrap{width:calc(100% - 36px)}
 :is(#services,#experience,#industry,#formats,#journal,#contact) h2{font-size:32px}
 #experience .experience-competence h3{font-size:24px}
 .hero-approved .hero-copy{padding-inline:18px}
}
@media(max-height:500px) and (min-width:701px) and (max-width:950px){
 .site-header{display:flex;min-height:66px;padding:6px 20px;gap:15px}
 .site-header .brand>svg{width:88px;height:62px;margin:-7px -5px -7px 0;transform:none}
 .site-header .brand .wordmark>span{font-size:25px}.site-header .brand .wordmark small{font-size:13px}
 .site-header .header-contact{margin-left:auto}.site-header .header-cta{font-size:21px;min-height:44px;padding:9px 14px}
 .site-header .menu-toggle{flex-shrink:0}
 .site-header .mobile-nav:not([hidden]){max-height:calc(100dvh - var(--gp-header-height));padding-block:6px;overscroll-behavior:contain}
 .site-header .mobile-nav a{min-height:44px;padding-block:9px}
 .about-dialog{max-height:calc(100dvh - 20px)}
}
@media(hover:none){
 a,button,summary{-webkit-tap-highlight-color:transparent}
 :is(.button,.messenger-link,.format-card,.service>summary,.industry-stage>summary):active{filter:brightness(.96)}
 .question-action:active::before{opacity:1}
}
@media(prefers-reduced-motion:reduce){.mobile-approach *{transition:none}}
