
/* Isabelle Clavet — BF02/BF03/BF04: focused V1 convergence, no art-direction change */
html,body { max-width:100%; }
.head-row{min-width:0}
.head-row>*{min-width:0}
.head-cta{flex-shrink:0}
.nav{min-width:0}
.ic-tool{max-width:100%}
.ic-inputs,.ic-result{min-width:0}
.ic-row > label,.ic-row > span {min-width:0}
.ic-row [hidden],.ic-row[hidden]{display:none!important}
.ic-next{min-width:0}
.ic-next>div{min-width:0}
.ic-next>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;min-width:0}
.ic-next button,.ic-next a{min-width:0;max-width:100%;line-height:1.4}
.ic-result output{overflow-wrap:anywhere}
@media (max-width:1120px){
 .head-row{gap:12px}
 .nav{display:none;position:absolute;top:83px;left:0;right:0;z-index:50;
   background:#fffafa;padding:18px 26px 27px;box-shadow:0 16px 32px #28262d22;
   flex-direction:column;align-items:stretch;gap:0;margin:0}
 .nav.open{display:flex}
 .nav a{font-size:15px;padding:10px 0}
 .toggle{display:block}
 .head-cta{margin-left:auto}
 .head-cta .btn{display:none}
}
@media (max-width:860px){
 .topbar{display:none}
 .nav{top:75px}
 .hero-inner{padding-top:0}
 .hero-copy{padding-top:48px}
 .ic-next>div:last-child{justify-content:flex-start}
}
@media (max-width:580px){
 .head-row{gap:8px}
 .brand strong{font-size:clamp(21px,6.6vw,25px)}
 .brand small{font-size:7.7px;letter-spacing:.19em}
 .lang{padding:6px 8px;line-height:1.25}
 .toggle{padding:7px 8px;flex-shrink:0}
 .toggle span{width:20px}
 .ic-intro h2{font-size:clamp(27px,7.8vw,34px)}
 .ic-tabs{max-width:100%;gap:3px;padding:4px}
 .ic-tabs button{min-width:0;overflow-wrap:anywhere;line-height:1.25}
 .ic-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 .ic-row label{min-width:0}
 .ic-row input,.ic-row select{width:100%;min-width:0;max-width:100%;font-size:16px}
 .ic-next>div:last-child{display:grid;grid-template-columns:1fr}
 .ic-next button,.ic-next a{width:100%;white-space:normal}
 .ic-result dl div{align-items:baseline}
 .ic-result dt{max-width:62%}
 .ic-result dd{max-width:38%;overflow-wrap:anywhere}
}
@media (max-width:350px){
 .head-row{gap:5px}
 .brand strong{font-size:20px;letter-spacing:-.055em}
 .brand small{font-size:7px;letter-spacing:.13em}
 .lang{font-size:11px;padding:6px}
 .toggle{padding:6px}
 .toggle span{width:18px}
 .ic-inputs,.ic-result{padding:21px 17px}
 .ic-tabs button{font-size:11px;padding:10px 3px}
}
@media(prefers-reduced-motion:reduce){
 .btn,.decision,.entry{transition:none}
}

/* BF04 visually inspected full-page Chromium screenshots: no clipped hero, no footer collisions. */
@media(max-width:860px){
 .hero{overflow:hidden}
 .editorial-art{height:auto;min-height:425px;padding:15px 0 43px;align-content:center}
 .ledger{transform:rotate(-2deg);max-width:94%;margin-inline:auto}
 .editorial-art:before{width:min(320px,92vw);height:min(320px,92vw)}
 .editorial-art:after{width:min(275px,82vw);height:min(275px,82vw);transform:translate(8px,15px)}
}
@media(max-width:560px){
 .editorial-art{min-height:440px;padding:12px 0 44px}
 .ledger{padding:20px 22px}
 .ledger h2{font-size:26px;line-height:1.15;margin-bottom:18px}
 .ledger-item{padding:12px 0}
 .ledger-stamp{margin-top:19px}
 .ic-tool{margin-top:31px}
}
@media(max-width:350px){
 .editorial-art{min-height:435px;padding:12px 0 36px}
 .ledger{max-width:93%;padding:18px 18px}
}
.footer a.brand{display:grid;grid-auto-flow:row;justify-content:start;gap:5px;width:max-content;max-width:100%}
.footer a.brand strong{display:block;line-height:1.1;letter-spacing:-.035em}
.footer a.brand small{display:block;font-size:9px;line-height:1.45;letter-spacing:.2em;color:#d7b9c5;white-space:nowrap}
.foot-bottom a{display:inline}
.foot-bottom span:last-child{display:block;white-space:nowrap;margin-top:8px}

/* iPhone finishing — real screenshots 2026-10-23 */
.ic-tabs button{color:#302d31!important;-webkit-appearance:none;appearance:none;outline-offset:3px}
.ic-tabs button.active{color:#493642!important;background:#fff}
.ic-next a,.ic-next button{color:#fff!important}
.ic-next button{background:transparent!important;color:#272a2e!important;border:1px solid #83747b!important}
.ic-next a{background:#272a2e!important}
.ic-next{align-items:center;gap:18px}
.ic-next h2{font-size:clamp(22px,5vw,27px);letter-spacing:-.025em}
.ic-next p{font-size:13px;max-width:440px}
.ic-foot{max-width:730px;font-size:12px;line-height:1.65}
.entry h3{letter-spacing:-.02em;overflow-wrap:break-word}
.entry>div{min-width:0}
.entry .arrow{align-self:center}
.footer{padding-bottom:25px}
.footer .footer-grid{row-gap:24px}
.legal-page{max-width:870px;margin-inline:auto;padding:39px 0 64px}
.legal-page h2{font:500 clamp(22px,4.8vw,30px)/1.23 Georgia,serif;letter-spacing:-.03em;margin:28px 0 9px}
.legal-page p,.legal-page li{font-size:15px;line-height:1.8;color:#514b51}
.legal-page a{font-weight:600;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:1120px){
 .head{transition:transform .18s ease,box-shadow .18s ease}
 .head.is-scrolling-down{transform:translateY(-112%)}
 .head:focus-within{transform:none!important}
}
@media(max-width:860px){
 .page-head{padding:46px 0 48px}
 .page-head h1{font-size:clamp(34px,8.8vw,45px);line-height:1.15}
 .page-head p{font-size:15px;line-height:1.6;margin:17px 0 0}
 .directory{padding:19px 0 54px}
 .entry{grid-template-columns:27px minmax(0,1fr) 20px;gap:13px;align-items:start;padding:19px 0}
 .entry h3{font-size:clamp(21px,5.9vw,27px);line-height:1.18;margin:0 0 8px}
 .entry p{font-size:13px;line-height:1.55}
 .entry .arrow{align-self:start;line-height:1.2}
 .entry .entry-no{line-height:1.2;padding-top:6px}
 .section{padding-block:54px}
 .section.compact{padding-block:43px}
 .inner-body{padding-block:35px 55px}
 .footer{padding-top:42px}
 .footer-grid{gap:20px}
 .ic-tool{margin-top:24px;margin-bottom:47px}
 .ic-inputs,.ic-result{box-shadow:none}
 .ic-next{margin-top:12px;padding:22px}
 .ic-next h2{font-size:24px}
 .ic-next p{font-size:13px}
 .ic-next>div:last-child{gap:9px}
}
@media(max-width:580px){
 .page-head{padding:35px 0 39px}
 .page-head h1{font-size:clamp(32px,8.4vw,42px);letter-spacing:-.048em}
 .page-head p{font-size:14px}
 .page-head .micro{font-size:9px;letter-spacing:.15em}
 .directory{padding-bottom:42px}
 .ic-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:7px 0 15px}
 .ic-tabs button{min-width:0;padding:12px 3px;font-size:clamp(11px,3.2vw,13px);font-weight:600;line-height:1.35;white-space:normal}
 .ic-row label{font-size:12px;line-height:1.4}
 .ic-inputs,.ic-result{padding:23px 20px}
 .ic-result output{font-size:clamp(39px,10vw,51px)}
 .ic-next{padding:22px 19px}
 .ic-next a,.ic-next button{font-size:13px;line-height:1.45;border-radius:3px}
 .ic-foot{margin:14px 0 22px;font-size:11.5px}
 .legal-page{padding:28px 0 40px}
 .legal-page h2{font-size:24px;margin-top:23px}
 .legal-page p{font-size:14px;line-height:1.68}
 .foot-bottom{margin-top:25px}
}
