/* Shared outer geometry for home, finder questions and recommendation results.
   Loaded last to override prototype shell widths without changing card layouts. */
.home-page,.fitrus-finder-page{
  --landing-max-width:1600px;
  --landing-gutter:20px;
}
@media(min-width:768px){
  .home-page,.fitrus-finder-page{--landing-gutter:32px;}
}
@media(min-width:960px){
  .home-page,.fitrus-finder-page{--landing-gutter:clamp(48px,4vw,72px);}
}
:is(.home-page,.fitrus-finder-page) .landing-frame{
  box-sizing:border-box;
  width:100%!important;
  max-width:var(--landing-max-width)!important;
  min-width:0;
  margin-inline:auto;
  padding-inline:var(--landing-gutter)!important;
}
.home-page .landing-frame{padding-top:0;padding-bottom:72px;}
@media(max-width:959px){.home-page .landing-frame{padding-bottom:40px;}}
:is(.home-page,.fitrus-finder-page) .landing-frame>main{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  max-width:none!important;
  margin-inline:0;
  padding-inline:0!important;
}
:is(.home-page,.fitrus-finder-page) .landing-frame>.landing-header,
:is(.home-page,.fitrus-finder-page) .landing-frame>.home-footer{
  box-sizing:border-box;
  width:auto;
  max-width:none!important;
  margin-inline:calc(-1 * var(--landing-gutter));
  padding-inline:var(--landing-gutter)!important;
}
:is(.home-page,.fitrus-finder-page) .landing-frame>.home-footer{
  box-shadow:0 0 0 100vmax #06111f;
  clip-path:inset(0 -100vmax);
}
.fitrus-finder-page.result-mode .result-bottom-bar{
  padding-inline:var(--landing-gutter);
}
.fitrus-finder-page.result-mode .result-bottom-inner{
  box-sizing:border-box;
  width:100%;
  max-width:calc(var(--landing-max-width) - 2 * var(--landing-gutter));
  margin-inline:auto;
}
/* Navigation shared by home, recommendation and experience pages only. */
:is(.home-page,.fitrus-finder-page) .landing-header nav{gap:24px;}
:is(.home-page,.fitrus-finder-page) .landing-header .home-experience{color:#0f1424;font-size:14px;text-decoration:none;}
:is(.home-page,.fitrus-finder-page) .landing-header .home-experience:hover,
:is(.home-page,.fitrus-finder-page) .landing-header .home-experience[aria-current="page"]{color:#087a69;text-decoration:none;}
:is(.home-page,.fitrus-finder-page) .landing-header nav a:focus-visible{outline:2px solid #0b8f7a;outline-offset:4px;border-radius:4px;}
@media(max-width:767px){
  :is(.home-page,.fitrus-finder-page) .landing-header nav{gap:16px;}
  :is(.home-page,.fitrus-finder-page) .landing-header .home-experience{font-size:12px;}
}
/* Explicit header metrics prevent inherited page fonts and shell rules from drifting. */
:is(.home-page,.fitrus-finder-page) .landing-frame>.landing-header{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  height:68px;min-height:68px;padding-block:0!important;
  font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:14px;font-weight:600;line-height:1.4;letter-spacing:normal;
}
:is(.home-page,.fitrus-finder-page) .landing-header .home-logo{display:flex;align-items:center;flex-shrink:0;min-height:44px;}
:is(.home-page,.fitrus-finder-page) .landing-header .home-logo img{display:block;width:auto;height:24px;max-width:120px;}
:is(.home-page,.fitrus-finder-page) .landing-header nav{display:flex;align-items:center;gap:24px;margin-left:auto;}
:is(.home-page,.fitrus-finder-page) .landing-header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:normal;white-space:nowrap;}
@media(max-width:767px){
  :is(.home-page,.fitrus-finder-page) .landing-header .home-logo img{height:22px;max-width:105px;}
  :is(.home-page,.fitrus-finder-page) .landing-header nav{gap:16px;}
  :is(.home-page,.fitrus-finder-page) .landing-header nav a{font-size:12px;}
}
@media(max-width:359px){
  :is(.home-page,.fitrus-finder-page) .landing-frame>.landing-header{gap:4px;}
  :is(.home-page,.fitrus-finder-page) .landing-header .home-logo img{height:20px;max-width:88px;}
}
/* Larger desktop header; tablet and phone metrics remain unchanged. */
@media(min-width:960px){
  :is(.home-page,.fitrus-finder-page) .landing-frame>.landing-header{height:88px;min-height:88px;font-size:16px;}
  :is(.home-page,.fitrus-finder-page) .landing-header .home-logo img{height:32px;max-width:160px;}
  :is(.home-page,.fitrus-finder-page) .landing-header nav{gap:32px;}
  :is(.home-page,.fitrus-finder-page) .landing-header nav :is(.home-experience,.home-login){font-size:16px;}
}
