/* Youngcraft Ltd Premium Rebuild — Prototype 22
   Final harmonisation layer: editorial neatness, controlled density, service depth,
   project evidence, real brand/social presentation and responsive polish. */

/* --------------------------------------------------------------------------
   Editorial rhythm — one calm reading system across marketing and long-form pages
   -------------------------------------------------------------------------- */
.editorial-copy-section{padding:clamp(2.7rem,4vw,4rem) 0;background:#fff}
.editorial-copy{width:100%;max-width:920px}
.editorial-copy--wide{max-width:980px}
.editorial-copy p{max-width:78ch;margin:0 0 1.2em;font-size:clamp(1rem,.95rem + .16vw,1.08rem);line-height:1.72;color:#56616a;font-weight:400}
.editorial-copy p:last-of-type{margin-bottom:0}
.editorial-copy p strong{color:var(--ink);font-weight:720}
.editorial-copy h2{margin:0 0 .75rem;font-size:clamp(1.55rem,1.3rem + .75vw,2rem);line-height:1.16;letter-spacing:-.025em}
.editorial-copy .text-link{margin-top:1.2rem}

.home-overview-text{padding:clamp(2.9rem,4.6vw,4.35rem) 0!important;border-bottom:1px solid var(--line);background:#fff}
.home-overview-text__inner{max-width:980px!important;display:block!important}
.home-overview-text p{font-size:clamp(1.02rem,.95rem + .25vw,1.16rem)!important;line-height:1.7!important;color:#4f5a63!important;max-width:78ch!important}
.home-overview-text p strong{font-weight:720!important;color:var(--ink)!important}
.home-overview-text .text-link{margin-top:1.2rem}

/* --------------------------------------------------------------------------
   Homepage — hero is the only photographic storytelling surface
   -------------------------------------------------------------------------- */
.home-service-hero__navigation{display:none!important}
.home-service-controls--floating{bottom:20px!important;right:max(18px,calc((100vw - var(--container))/2))!important;padding:5px!important;gap:5px!important;background:rgba(8,11,15,.72)!important}
.home-service-controls--floating button{width:36px!important;height:36px!important;font-size:.86rem!important}
.home-service-slide__content{padding-bottom:34px!important}
.home-service-slide__panel{width:min(100%,350px)!important;padding:20px 22px 21px!important;background:rgba(8,11,15,.88)!important;box-shadow:none!important;backdrop-filter:blur(6px)!important}
.home-service-slide__panel--overview{width:min(100%,390px)!important;padding:22px 24px 23px!important}
.home-service-slide h1{font-size:clamp(2.15rem,3vw,3rem)!important;line-height:1!important;max-width:340px!important}
.home-service-slide h2{font-size:clamp(1.5rem,2vw,2rem)!important;line-height:1.05!important;max-width:310px!important}
.home-service-slide__descriptor{display:block;margin-top:.7rem;color:#d8dde0;font-size:.74rem!important;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.home-service-slide__number{margin-bottom:8px!important;font-size:.56rem!important}
.home-service-slide__link{display:inline-flex;align-items:center;gap:6px;margin-top:15px;font-size:.74rem!important}

/* --------------------------------------------------------------------------
   Brands — real logos where supplied, text fallbacks where not yet supplied
   -------------------------------------------------------------------------- */
.home-brands-strip{padding:2.3rem 0 2.45rem!important;border-top:0!important;border-bottom:1px solid var(--line);background:#fff!important}
.home-brands-strip__head{margin-bottom:1.25rem!important}
.home-brands-strip__head>div{grid-template-columns:170px minmax(0,760px)!important;gap:36px!important}
.home-brands-strip__head span{font-size:.62rem!important;color:#87660f!important}
.home-brands-strip__head p{font-size:.8rem!important;line-height:1.55!important;color:#69737b!important}
.home-brands-strip__rail{gap:clamp(24px,3vw,46px)!important;padding:8px 0!important}
.brand-item{min-width:104px!important;height:54px!important;filter:none!important;opacity:.66!important;color:#7a8085!important;transition:opacity .2s ease,transform .2s ease!important}
.brand-item img{display:block!important;width:auto!important;height:auto!important;max-width:124px!important;max-height:34px!important;object-fit:contain!important;filter:grayscale(1) contrast(.92)!important;opacity:1!important}
.brand-item:hover{opacity:1!important;transform:translateY(-1px)!important}
.brand-item:hover img{filter:grayscale(0)!important}
.brand-item>span{font-size:.86rem;font-weight:720;letter-spacing:.01em}
.brand-item--more{font-size:.62rem!important;letter-spacing:.12em!important;color:#8a6a18!important}
.home-brands-strip--supply{background:#f8f7f3!important;border-top:1px solid var(--line)!important}

/* --------------------------------------------------------------------------
   Sectors — informative tags, not app buttons
   -------------------------------------------------------------------------- */
.home-sectors-strip{padding:1.8rem 0 2rem!important;background:#f5f3ee!important;border-bottom:0}
.home-sectors-strip__inner{align-items:flex-start!important;gap:34px!important}
.home-sectors-strip__inner>span{padding-top:5px;font-size:.61rem!important;letter-spacing:.13em!important;text-transform:uppercase;font-weight:800;color:#87660f}
.home-sector-list--tags{gap:6px 20px!important}
.home-sector-list--tags .home-sector-tag{font-size:.76rem!important;font-weight:650!important;color:#222a30!important}

/* --------------------------------------------------------------------------
   Header / mega menu — restrained desktop, true mobile drawer
   -------------------------------------------------------------------------- */
.site-header{border-bottom:1px solid rgba(11,15,20,.08)!important;box-shadow:none!important}
.header-inner{min-height:70px!important;height:70px!important}
.services-mega{top:70px!important;box-shadow:0 24px 60px rgba(11,15,20,.10)!important;border:1px solid #e3dfd6!important}
.services-mega__intro{padding:25px 28px!important}
.services-mega__intro>span{font-size:.58rem!important;letter-spacing:.13em!important}
.services-mega__intro>strong{font-size:1.05rem!important;line-height:1.25!important;max-width:250px}
.services-mega__links a{min-height:49px!important;padding:12px 16px!important}
.services-mega__links a strong{font-size:.78rem!important}
.services-mega__links a span{font-size:.52rem!important}

/* --------------------------------------------------------------------------
   Service anchors — legible, calm, sticky
   -------------------------------------------------------------------------- */
.service-anchor-nav{position:sticky;top:70px;z-index:35;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(12px);border-top:0!important;border-bottom:1px solid var(--line)!important}
.service-anchor-nav__inner{display:flex;align-items:center;gap:30px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;min-height:50px}
.service-anchor-nav__inner::-webkit-scrollbar{display:none}
.service-anchor-nav a{position:relative;display:flex;align-items:center;min-height:50px;padding:0!important;border:0!important;color:#5e6870!important;font-size:.72rem!important;font-weight:700!important;background:transparent!important}
.service-anchor-nav a:hover,.service-anchor-nav a:focus{color:var(--ink)!important}
.service-anchor-nav a:first-child{color:#9a7416!important}
.service-anchor-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--gold);transition:right .18s ease}
.service-anchor-nav a:hover:after,.service-anchor-nav a:focus:after,.service-anchor-nav a:first-child:after{right:0}

/* --------------------------------------------------------------------------
   Service pages — rich, readable and substantial without presentation-card feel
   -------------------------------------------------------------------------- */
.service-modern-overview{padding:clamp(3rem,4.5vw,4.6rem) 0!important;background:#fff}
.service-modern-overview .editorial-copy h2{margin-bottom:1rem}
.service-overview-prompt{margin-top:1.5rem!important;padding-top:1.25rem;border-top:1px solid var(--line);font-size:.88rem!important;color:#657079!important}
.service-overview-prompt a{font-weight:750;color:var(--ink);text-decoration:underline;text-decoration-color:#d4a017;text-underline-offset:4px}
.service-modern-section{padding:clamp(3rem,4.7vw,4.7rem) 0!important}
.service-modern-heading{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:54px;align-items:start;margin-bottom:1.6rem!important}
.service-modern-heading h2{font-size:clamp(1.5rem,1.25rem + .75vw,2rem)!important;margin:0!important;line-height:1.14!important}
.service-modern-heading>p,.service-modern-heading>div>p{margin:0;color:#68727a;font-size:.86rem;line-height:1.62;max-width:660px}
.service-modern-heading--split{align-items:end}
.service-cover-list{border-top:1px solid var(--line)}
.service-cover-list__item{padding:20px 0!important;grid-template-columns:44px minmax(0,1fr)!important;gap:20px!important}
.service-cover-list__item h3{font-size:.94rem!important;margin-bottom:5px!important}
.service-cover-list__item p{font-size:.82rem!important;line-height:1.58!important;max-width:790px}
.service-sector-list>div{padding:18px 0 20px!important}
.service-sector-list h3{font-size:.9rem!important}
.service-sector-list p{font-size:.79rem!important;line-height:1.55!important}
.service-process-line>div{padding-top:20px!important;padding-bottom:20px!important}
.service-process-line h3{font-size:.88rem!important}
.service-process-line p{font-size:.75rem!important;line-height:1.52!important}
.service-callback-strip{padding:1.8rem 0!important;background:#0b0f14!important;border-top:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
.service-callback-strip__inner{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:36px!important}
.service-callback-strip__inner>div:first-child{display:flex!important;flex-direction:column!important;gap:5px!important}
.service-callback-strip__inner>div:first-child strong{font-size:1.08rem!important;line-height:1.25!important;color:#fff!important}
.service-callback-strip__inner>div:first-child span{font-size:.78rem!important;line-height:1.5!important;color:#aeb6bd!important}
.service-callback-strip__actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;flex-wrap:wrap!important}
.service-callback-strip__actions .btn{min-height:46px!important}

/* FAQs */
.service-questions__inner{max-width:1080px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line);background:transparent}
.faq-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 28px;gap:24px;align-items:center;padding:18px 0;font-family:var(--font-display);font-size:.93rem;font-weight:720;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d8d4ca;border-radius:50%;font-size:1rem;font-weight:400;transition:transform .18s ease,border-color .18s ease,color .18s ease}
.faq-item[open] summary span{transform:rotate(45deg);border-color:var(--gold);color:#946e0c}
.faq-item>div{padding:0 52px 18px 0}
.faq-item p{margin:0;max-width:78ch;font-size:.83rem;line-height:1.65;color:#606b73}

/* --------------------------------------------------------------------------
   Projects — hero -> chyron -> concise context -> evidence
   -------------------------------------------------------------------------- */
.project-chyron{height:52px!important}
.project-chyron__inner{gap:24px!important}
.project-chyron__inner>strong{font-size:.58rem!important}
.project-chyron a{font-size:.72rem!important}
.project-intro{padding:1.75rem 0 1.8rem!important}
.project-intro__inner{max-width:980px!important}
.project-intro p{font-size:.95rem!important;line-height:1.64!important;max-width:82ch}
.project-featured-section{padding:2.25rem 0 3.25rem!important}
.project-records-section{padding:3rem 0 4rem!important}
.premium-section-heading{margin-bottom:1.35rem!important}
.premium-section-heading h2{font-size:clamp(1.45rem,1.2rem + .7vw,1.9rem)!important;margin:0 0 5px!important}
.premium-section-heading p{font-size:.8rem!important;line-height:1.55!important;color:#69737b!important;margin:0!important}
.project-feature__content{padding-top:16px!important}
.project-feature__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.project-feature__title-row h3{margin:10px 0 8px!important}
.project-feature__title-row>span{flex:0 0 auto;margin-top:12px;font-size:.57rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#8a6915}
.project-feature__evidence{grid-template-columns:82px 1fr!important;padding:10px 0!important}
.project-feature__evidence>span{font-size:.54rem!important}
.project-feature__evidence p{font-size:.76rem!important}
.project-record{padding:22px 0!important;gap:26px!important}
.project-record__identity h2{font-size:1.08rem!important;margin:12px 0 7px!important}
.project-record__field p{font-size:.78rem!important}

/* --------------------------------------------------------------------------
   About — tagline belongs to the hero identity; body is a continuous story
   -------------------------------------------------------------------------- */
.about-story{padding:clamp(3rem,4.5vw,4.5rem) 0!important}
.about-story__signature{display:none!important}
.about-method{padding:3.3rem 0!important}
.about-method__inner{gap:54px!important}
.about-method__list>div{padding:16px 0!important}
.about-future{padding:3.2rem 0 3.8rem!important}

/* --------------------------------------------------------------------------
   Supply + maintenance — show first, explain second, invite action throughout
   -------------------------------------------------------------------------- */
.supply-catalogue-first{padding:clamp(3rem,4.5vw,4.5rem) 0!important}
.catalogue-preview-grid--premium{margin-top:1.35rem!important}
.supply-catalogue-actions{margin-top:1.4rem!important;padding-top:1rem!important}
.supply-modes-section{padding:3.2rem 0!important}
.supply-mode{padding-block:0!important}
.maintenance-priority-section{padding:3.2rem 0!important}

/* --------------------------------------------------------------------------
   Insights — editorial library, not a tag cloud or presentation slide
   -------------------------------------------------------------------------- */
.insights-conversation{padding:2.9rem 0 2.6rem!important}
.insights-conversation p{font-size:clamp(1rem,1.05vw,1.08rem)!important;line-height:1.72!important}
.insights-topic-bar{top:70px!important;padding:12px 0 10px!important}
.insights-topic-nav{gap:20px!important}
.insights-topic-nav a{font-size:.72rem!important}
.insights-search--editorial{height:36px!important;flex-basis:220px!important}
.insight-feature{margin-top:2rem!important}
.insights-library--editorial{padding-bottom:4rem!important}
.article-body{max-width:76ch}
.related-insights .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px}
.related-insights .section-head .eyebrow{display:none}
.related-insights .section-head h2{font-size:1.55rem;margin:0}
.related-insights .section-head>p{font-size:.82rem;margin:0;color:#68727a}

/* --------------------------------------------------------------------------
   Legal pages — document-like, readable and intentionally non-marketing
   -------------------------------------------------------------------------- */
.legal-header{padding:3.6rem 0 2.1rem!important}
.legal-header h1{font-size:clamp(2.15rem,3vw,3rem)!important}
.legal-body{padding:1.5rem 0 4rem!important}
.legal-body section{padding:1.3rem 0!important}
.legal-body p{font-size:.86rem!important;line-height:1.68!important}

/* --------------------------------------------------------------------------
   CTA family + footer — proper icons, symmetrical alignment, real socials
   -------------------------------------------------------------------------- */
.btn.btn--icon,.action-link{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.btn__icon,.action-link__icon{display:block;width:18px!important;height:18px!important;flex:0 0 18px!important;margin:0!important}
.btn__arrow,.action-link__arrow{display:block;width:15px!important;height:15px!important;flex:0 0 15px!important;margin-left:1px!important}
.footer-contact-row__actions{gap:14px!important}
.footer-contact-row__actions .btn{min-height:48px!important;padding:0 18px!important;line-height:1!important}
.footer-contact-row__actions .btn__icon{width:18px!important;height:18px!important;flex-basis:18px!important}
.footer-contact-row__actions .btn__arrow{width:15px!important;height:15px!important;flex-basis:15px!important}
.footer-socials{gap:9px!important;margin-top:17px!important}
.footer-social-link{width:34px!important;height:34px!important;border-radius:50%!important}
.footer-social-link__icon{width:16px!important;height:16px!important}
.footer-social-link.is-disabled{opacity:.4!important;pointer-events:none!important}
.footer-social-link.is-disabled:hover{transform:none!important;border-color:rgba(255,255,255,.18)!important;color:#aeb6bd!important}

/* --------------------------------------------------------------------------
   Responsive refinements
   -------------------------------------------------------------------------- */
@media(max-width:1080px){
  .service-anchor-nav{top:68px}
  .insights-topic-bar{top:68px!important}
}
@media(max-width:820px){
  .editorial-copy-section{padding:2.5rem 0}
  .home-brands-strip__head>div{grid-template-columns:1fr!important;gap:8px!important}
  .home-sectors-strip__inner{display:block!important}
  .home-sectors-strip__inner>span{display:block;margin-bottom:12px}
  .service-modern-heading{grid-template-columns:1fr;gap:8px}
  .service-callback-strip__inner{grid-template-columns:1fr!important;gap:18px!important}
  .service-callback-strip__actions{justify-content:flex-start!important}
  .project-feature__title-row{display:block}
  .project-feature__title-row>span{display:inline-block;margin:0 0 8px}
}
@media(max-width:620px){
  .home-service-slide__content{padding-bottom:24px!important}
  .home-service-slide__panel,.home-service-slide__panel--overview{width:calc(100% - 30px)!important;margin-left:15px!important;padding:18px 19px 19px!important}
  .home-service-slide h1{font-size:2.05rem!important}
  .home-service-slide h2{font-size:1.45rem!important}
  .home-service-controls--floating{right:14px!important;bottom:12px!important}
  .home-service-controls--floating button{width:34px!important;height:34px!important}
  .service-anchor-nav__inner{gap:22px;min-height:47px}
  .service-anchor-nav a{min-height:47px;font-size:.69rem!important}
  .project-chyron{height:48px!important}
  .project-chyron__inner{grid-template-columns:1fr!important;gap:0!important}
  .project-chyron__inner>strong{display:none}
  .faq-item summary{font-size:.88rem;padding:16px 0}
  .faq-item>div{padding-right:38px}
  .home-brands-strip__rail{gap:28px!important}
  .brand-item{min-width:92px!important}
  .brand-item img{max-width:105px!important;max-height:30px!important}
}
@media(prefers-reduced-motion:reduce){
  .project-chyron__track{animation:none!important;transform:none!important}
  .brand-item,.btn,.text-link,.services-mega{transition:none!important}
}

/* Contact flow */
.contact-entry{padding:2.6rem 0!important}
.contact-entry__intro h2{font-size:clamp(1.55rem,2vw,2rem)!important;margin:0 0 10px}
.contact-entry__intro .lead-copy{font-size:.9rem!important;line-height:1.7!important;color:#606b73!important}
.contact-workflow{padding:3.6rem 0!important}
.contact-workflow__aside h2{font-size:clamp(1.45rem,1.8vw,1.85rem)!important;margin-bottom:10px}
.contact-next{padding:3.2rem 0!important}
.contact-next__inner{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:60px;align-items:start}
.contact-next__inner>div:first-child h2{font-size:clamp(1.5rem,1.9vw,1.9rem);margin:0 0 10px}
.contact-next__inner>div:first-child p{font-size:.86rem;line-height:1.65;color:#657079;margin:0}
.contact-next__steps{border-top:1px solid var(--line)}
.contact-next__steps>div{display:grid;grid-template-columns:40px 120px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
.contact-next__steps span{font-size:.56rem;letter-spacing:.1em;font-weight:800;color:#8b690e;padding-top:3px}
.contact-next__steps strong{font-family:var(--font-display);font-size:.86rem}
.contact-next__steps p{font-size:.79rem;line-height:1.55;color:#66717a;margin:0}

/* Project detail facts */
.project-experience-facts__inner{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.project-experience-summary{padding:3rem 0!important}
.project-experience-summary__story>div{padding-block:18px!important}
.project-related-services{padding:2rem 0!important}

/* Keep the footer dense but breathable */
.footer-contact-row{padding:32px 0!important}
.footer-grid{padding-top:30px!important;padding-bottom:28px!important}
.footer-bottom{padding-block:16px!important}

@media(max-width:900px){
  .contact-next__inner{grid-template-columns:1fr;gap:24px}
  .project-experience-facts__inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .contact-next__steps>div{grid-template-columns:32px 1fr;gap:12px}
  .contact-next__steps p{grid-column:2}
  .project-experience-facts__inner{grid-template-columns:1fr!important}
}
