:root{--paper:#fcfbf8;--ivory:#f2f3ef;--ink:#233e44;--navy:#123741;--deep:#0d2932;--gold:#81623a;--champagne:#e5cea1;--muted:#607277;--line:#dce2dd;--soft:#eaf1ed;--sans:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--serif:Georgia,"Songti SC","SimSun",serif}
.certificate-section{background:var(--ivory);border-block:1px solid var(--line);scroll-margin-top:108px}
.certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.certificate-card{min-width:0;background:var(--paper);border:1px solid #d7e0d4;border-radius:10px;overflow:hidden}
.certificate-preview{display:flex;align-items:center;justify-content:center;position:relative;height:390px;padding:26px 30px 42px;background:#e7ece5;border-bottom:1px solid var(--line)}
.certificate-preview img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 4px 18px #173a4314}
.certificate-preview>span{position:absolute;bottom:9px;right:22px;font-size:12px;color:var(--navy)}
.certificate-copy{padding:28px 30px}.certificate-copy .eyebrow{font-size:10px;margin-bottom:12px}.certificate-copy h3{font-size:22px;line-height:1.55;margin-bottom:17px}
.certificate-number{color:var(--navy);font-size:14px;font-weight:600;overflow-wrap:anywhere}.certificate-date,.certificate-issuer{font-size:13px;color:var(--muted);margin-top:8px}.certificate-description{font-size:14px;color:var(--muted);margin-top:18px;line-height:1.9}
.certificate-links{list-style:none;display:flex;flex-wrap:wrap;gap:6px 20px;padding:0;margin:22px 0 0}.certificate-links .text-link{font-size:13px;min-height:44px;gap:8px}.certificate-format{font-size:10px;color:var(--gold);white-space:nowrap}.certificate-note{margin-top:28px;border-left:2px solid #ad9569;background:var(--paper)}
.certificate-links .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(hover:hover){.certificate-preview:hover{background:#dde5da}.certificate-preview:hover>span{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:979px){.certificate-grid{gap:24px}.certificate-preview{height:330px;padding:24px 22px 42px}.certificate-copy{padding:24px}.certificate-copy h3{font-size:20px}}
@media(max-width:639px){.certificate-grid{grid-template-columns:1fr;gap:24px}.certificate-preview{height:340px}.certificate-copy{padding:23px}.certificate-copy h3{font-size:20px}.certificate-links{gap:5px 18px}.certificate-note{padding:16px 18px}}
.knowledge-tools{display:flex;flex-wrap:wrap;gap:12px 28px;margin:24px 0;font-size:14px;font-weight:600;color:var(--navy)}
.knowledge-tools a,.answer-list h3 a,.topic-grid li a,.standard-list a{text-decoration:underline;text-decoration-color:#b7a477;text-underline-offset:5px;overflow-wrap:anywhere}
.knowledge-topics{margin-top:72px;padding-top:48px;border-top:1px solid var(--line);scroll-margin-top:110px}
.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}.topic-grid article{padding:30px 0;border-top:1px solid var(--line)}.topic-grid h3{margin-bottom:12px}.topic-grid p:not(.eyebrow),.topic-grid li{font-size:14px}.topic-grid ul{padding-left:1.2em;margin:18px 0}.topic-grid li+li{margin-top:10px}
.answer-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.answer-list article{padding:24px 0;border-top:2px solid #b7a477}.answer-list h3{font-size:20px}.answer-list p{margin:16px 0;font-size:15px}
.standard-jump{display:flex;flex-wrap:wrap;gap:9px;margin:36px 0}.standard-jump a{border:1px solid var(--line);padding:7px 12px;border-radius:5px;font-size:13px;background:#fff}.standard-list>section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:56px;border-top:1px solid var(--line);padding:42px 0;scroll-margin-top:112px}.standard-list h2{font-size:25px;line-height:1.65}.standard-list h3{font-size:16px}.standard-list li{font-size:14px;margin:12px 0}.standard-sources{padding-left:1.1em;color:var(--muted)}
@media(hover:hover){.knowledge-tools a:hover,.topic-grid a:hover,.standard-list a:hover,.answer-list a:hover{color:var(--gold)}.standard-jump a:hover{background:var(--soft);border-color:#b7a477}}
@media(max-width:979px){.answer-list{grid-template-columns:1fr}.standard-list>section{gap:28px}.topic-grid{gap:0 28px}}
@media(max-width:639px){.topic-grid,.standard-list>section{grid-template-columns:1fr}.knowledge-topics{margin-top:44px;padding-top:32px}.knowledge-tools{gap:14px;font-size:13px}.standard-list>section{padding:30px 0;gap:20px}.standard-list h2{font-size:22px}.standard-jump a{font-size:12px}.topic-grid article{padding:24px 0}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9b7d49;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--navy)}h1,h2{font-weight:600;letter-spacing:.025em}h2{font-size:36px;line-height:1.5}h3{font-size:20px;line-height:1.6}p+p{margin-top:1rem}ul,ol{padding-left:1.4rem}address{font-style:normal}a[href^="mailto:"]{overflow-wrap:anywhere}svg{max-width:100%}::selection{background:#d8c59d;color:#102e36}
.wrap{max-width:1320px;padding-left:56px;padding-right:56px;margin:auto}.section{padding-top:88px;padding-bottom:88px}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.18em;font-weight:600;margin-bottom:18px}.lede{font-size:17px;line-height:1.95;color:var(--muted);max-width:720px}.text-link,.quiet-link{display:inline-flex;align-items:center;gap:12px;color:var(--navy);font-size:14px;border-bottom:1px solid #9daea8;padding:7px 0;min-height:42px;transition:color .2s,border-color .2s}.text-link:hover,.quiet-link:hover{border-color:var(--gold);color:var(--gold)}.quiet-link{color:var(--muted);font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:12px 25px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:3px;font-size:14px;font-weight:500;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{background:#244e57;transform:translateY(-2px);box-shadow:0 8px 22px #173a4314}.button.secondary{background:transparent;color:var(--navy);border-color:#95aaa9}.button.secondary:hover{background:var(--soft)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.fine-print,.scope-note{font-size:13px;line-height:1.9;color:var(--muted)}.skip-link{position:fixed;z-index:1000;top:8px;left:16px;padding:9px 16px;background:white;transform:translateY(-180%)}.skip-link:focus{transform:none}
.site-header{height:88px;padding:0 max(36px,calc((100vw - 1320px)/2 + 36px));display:flex;gap:28px;align-items:center;justify-content:space-between;border-bottom:1px solid #dce2dd;background:#fcfbf8f7;backdrop-filter:blur(12px);position:sticky;top:0;z-index:40}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand-mark{width:43px;height:47px;display:grid;place-items:center;position:relative;border:1px solid #9eab9d;color:var(--navy);font:34px/1 var(--serif)}.brand-mark:before{content:"";position:absolute;inset:4px;border:1px solid #cbd4c7}.brand-mark span{position:absolute;top:-5px;right:1px;font:19px/1 var(--sans);background:var(--paper);color:var(--gold)}.brand strong{font-size:24px;line-height:1.2;font-weight:600;letter-spacing:.14em;display:block}.brand small{font-size:8px;letter-spacing:.19em;color:var(--gold);display:block;margin-top:5px}#nav{display:flex;align-items:center;gap:28px;height:100%}#nav a{position:relative;display:flex;align-items:center;height:100%;font-size:13px;white-space:nowrap}#nav a:after{content:"";position:absolute;height:2px;background:var(--gold);bottom:20px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s}#nav a:hover,#nav a[aria-current]{color:var(--gold)}#nav a:hover:after,#nav a[aria-current]:after{transform:scaleX(1)}.header-phone{display:flex;flex-direction:column;white-space:nowrap;font-size:19px;font-weight:600;line-height:1.5;border-left:1px solid var(--line);padding-left:28px;letter-spacing:.03em}.header-phone small{color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.14em}.menu,.mobile-contact{display:none}
.hero-stage{position:relative;overflow:hidden;background:var(--deep);color:#fff}.hero-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 78% 35%,#2f586345,transparent 54%),linear-gradient(115deg,transparent 63%,#8eb5b008 63%,#8eb5b008 79%,transparent 79%)}.hero{position:relative;display:grid;grid-template-columns:1fr 1.1fr;gap:38px;align-items:center;min-height:615px;padding-top:64px;padding-bottom:68px}.hero-copy{padding:10px 0}.hero .eyebrow{color:#d5c29d;font-size:11px;letter-spacing:.18em;margin-bottom:27px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--champagne);margin-right:10px;vertical-align:2px;box-shadow:0 0 0 5px #e5cea10b}.hero h1{font-size:clamp(46px,4.7vw,68px);line-height:1.38;font-weight:500;letter-spacing:.025em;color:#fff}.hero h1 em{font-style:normal;color:var(--champagne)}.hero-subtitle{display:flex;flex-wrap:wrap;gap:0;margin-top:24px;margin-bottom:24px;color:#e7ece6;font-size:13px;letter-spacing:.1em}.hero-subtitle span+span:before{content:"/";margin:0 13px;color:#68868c}.hero .lede{font-size:14px;line-height:2;max-width:444px;color:#b4c8cb}.hero .button,.consult-band .button{background:var(--champagne);border-color:var(--champagne);color:var(--deep)}.hero .button:hover,.consult-band .button:hover{background:#f0dfba;box-shadow:0 8px 28px #0002}.hero .text-link{color:#eff3ed;border-color:#68858b}.hero .quiet-link{color:#b4c8cb;border:0;margin-top:16px;font-size:12px}.hero .quiet-link:hover{color:var(--champagne)}.hero-visual{position:relative;min-width:0;padding:14px 0 0}.drawing-label{display:flex;justify-content:space-between;gap:14px;font-size:9px;letter-spacing:.16em;color:#a6bdbe;border-top:1px solid #54727a66;padding:16px 0 2px}.hero-visual svg{width:100%;height:auto;display:block;overflow:visible}.hero-visual svg text{font-family:var(--sans)}.drawing-note{font-size:10px;letter-spacing:.07em;color:#a9c0c0;border-top:1px solid #54727a66;padding-top:16px}.drawing-note span{color:#ddc9a4;margin-right:12px}.hero-copy{animation:arrive .65s both}.hero-visual{animation:arrive .9s .12s both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hero-bottom{position:relative;background:#ffffff04;border-top:1px solid #48626a7a}.fact-strip{display:grid;grid-template-columns:1fr 1fr 1fr;padding-top:25px;padding-bottom:25px;gap:34px}.fact-strip>div{display:flex;align-items:center;gap:17px;border-right:1px solid #48626a8c;padding-right:24px}.fact-strip>div:last-child{border:0}.fact-icon{width:35px;height:35px;color:#ccbb96;flex-shrink:0}.fact-strip>div>div>span{display:block;color:#a9bfc1;font-size:10px;letter-spacing:.08em}.fact-strip strong,.fact-strip a{font-size:14px;font-weight:400;color:#f0f0e6}.fact-strip a:hover{color:var(--champagne)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:40px}.section-head h2{font-size:35px}.section-head p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:13px}.section-head .eyebrow{margin-bottom:13px}.section-head .text-link{flex-shrink:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{position:relative;display:flex;flex-direction:column;padding:30px 28px 26px;border:1px solid var(--line);border-radius:4px;background:#fff;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}.service-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#9e8a61;transform:scaleY(0);transform-origin:top;transition:transform .25s}.service-card:hover{border-color:#a3b8b1;transform:translateY(-4px);box-shadow:0 16px 36px #14373f0c}.service-card:hover:before{transform:scaleY(1)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.service-icon{display:block;width:44px;height:44px;color:#628783}.number{font:18px/1 var(--serif);color:#899b93;letter-spacing:.08em}.service-card .eyebrow{font-size:9px;color:var(--gold);letter-spacing:.1em;margin-bottom:9px}.service-card h3{font-size:21px;font-weight:600;margin-bottom:13px}.service-card>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.95;min-height:76px}.card-link{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--gold);margin-top:auto;padding-top:22px}.service-card .card-link{border-top:1px solid #e7ebe5;margin-top:22px;padding-top:17px}.card-link>span{font-size:17px}
.company-story{background:#eef2ee;border-top:1px solid #e3e9e2;border-bottom:1px solid #e3e9e2}.story-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.story-heading h2{font-size:37px;line-height:1.65}.story-heading .text-link{margin-top:24px}.story-detail>p{font-size:15px;line-height:2.15;color:var(--muted)}.story-detail strong{display:block;font-size:18px;color:var(--navy);margin-bottom:16px;font-weight:500}.story-principles{display:flex;flex-wrap:wrap;gap:18px;margin-top:26px;padding-top:22px;border-top:1px solid #ccd8ce;font-size:12px;color:#466864}.story-principles span:before{content:"＋";color:#a68b5c;margin-right:7px}.process-section{background:var(--ivory)}.home-process{background:var(--paper)}.process{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.process li{position:relative;border-top:1px solid #cad4cb;padding-top:28px}.process li:before{content:"";position:absolute;top:-3px;left:0;width:5px;height:5px;background:#a58f67}.process span{font:italic 34px/1 var(--serif);color:#99815c;display:block;margin-bottom:24px}.process h3{font-size:18px;font-weight:500;margin-bottom:12px}.process p{font-size:13px;color:var(--muted);line-height:1.95}
.journal-section{background:#f1f3ef;border-top:1px solid #e1e7df}.journal-grid{display:grid;grid-template-columns:.74fr 1.6fr;gap:68px;align-items:start}.journal-grid .section-head{display:block}.journal-grid .section-head .text-link{margin-top:26px}.journal-grid .article-grid{grid-template-columns:1fr}.journal-grid .article-card{padding:30px 34px}.journal-grid .article-card h3{font-size:25px;max-width:590px}.journal-grid .article-card:only-child{min-height:300px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-card{display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);border-radius:4px;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s}.article-card:hover{border-color:#a7bdb3;box-shadow:0 10px 26px #12374109;transform:translateY(-2px)}.article-card-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--gold);margin-bottom:21px}.article-card-meta>span{position:relative;padding-left:13px}.article-card-meta>span:before{content:"";position:absolute;left:0;top:8px;background:#a38758;width:4px;height:4px}.article-card-meta time{color:var(--muted)}.article-card h3{font-size:21px;line-height:1.7;font-weight:500;margin-bottom:15px}.article-card p{font-size:13px;line-height:2;color:var(--muted)}.article-card .card-link{margin-top:auto;padding-top:25px}.consult-band{position:relative;overflow:hidden;background:#143a43;color:#c5d7d6;padding:70px 0}.consult-band:before{content:"";position:absolute;right:-70px;top:-200px;width:650px;height:650px;border:1px solid #78989a25;border-radius:50%;box-shadow:0 0 0 90px #78989a08,0 0 0 180px #78989a05;pointer-events:none}.consult-band>.wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.consult-band h2{color:#fff;font-size:37px;font-weight:500;line-height:1.6}.consult-band .eyebrow{color:#d4c29b}.consult-band p:not(.eyebrow){font-size:14px;line-height:2}.consult-band .actions{margin-top:24px}.consult-band .text-link{color:white;border-color:#8eaaa9}
.page-intro{background:#eef2ee;border-bottom:1px solid #dbe3db;padding-top:29px;padding-bottom:52px;position:relative;overflow:hidden}.page-intro:after{content:"";position:absolute;right:5%;top:0;width:240px;height:240px;border:1px solid #aebda525;transform:rotate(32deg);pointer-events:none}.page-intro>.wrap{position:relative;z-index:1}.page-intro h1{font-size:44px;line-height:1.45;font-weight:500;margin-bottom:19px}.page-intro .eyebrow{margin-top:33px}.page-intro .lede{font-size:16px}.breadcrumbs{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:22px}.breadcrumbs a{border-bottom:1px solid transparent}.breadcrumbs a:hover{border-bottom-color:var(--gold);color:var(--gold)}.breadcrumbs [aria-current]{max-width:720px}.about-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:80px}.about-grid h2{font-size:26px;margin-bottom:10px}.about-grid p{font-size:15px;color:var(--muted);line-height:2.1}.about-grid .english-name{font:13px/1.8 var(--serif);margin-bottom:27px;color:var(--gold)}.company-facts{margin:0;padding:28px 32px;background:var(--ivory);border-top:2px solid #a59069;display:flex;flex-direction:column;gap:20px}.company-facts div+div{border-top:1px solid var(--line);padding-top:20px}.company-facts dt{font-size:11px;color:var(--gold);margin-bottom:7px}.company-facts dd{margin:0;font-size:14px}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.trust-grid article{border-left:2px solid #b29c75;padding-left:24px}.trust-grid article>span{font-size:11px;color:var(--gold)}.trust-grid h3{margin:12px 0;font-size:20px;font-weight:500}.trust-grid p{font-size:14px;color:var(--muted);line-height:2}.scope-note{border-left:2px solid #b6aa8d;margin-top:30px;padding:10px 0 10px 19px}.service-detail{display:grid;grid-template-columns:1.25fr 1fr;gap:85px}.service-detail h2{font-size:29px;margin-bottom:23px}.service-detail h3{margin-top:34px;margin-bottom:13px;font-size:18px;font-weight:500}.service-detail p{color:var(--muted);font-size:15px;line-height:2}.parameter-list{padding-left:20px;line-height:2.5;font-size:15px}.parameter-list li::marker{color:#9b875d}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips span{padding:6px 12px;border:1px solid var(--line);border-radius:3px;font-size:12px;color:var(--muted)}.preparation{align-self:start;background:#edf2ed;padding:32px;border-top:2px solid #a68f65;border-radius:3px}.preparation h2{font-size:24px}.preparation ol{font-size:14px;line-height:2.2;padding-left:20px}.preparation li+li{margin-top:8px}.preparation .fine-print{font-size:12px;margin-top:21px}.preparation .actions{gap:16px}.preparation .button{gap:12px}
.knowledge-section{padding-top:40px;padding-bottom:80px}.category-links{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.category-links a{font-size:13px;padding:8px 17px;border:1px solid var(--line);border-radius:3px;min-height:44px;transition:background .2s}.category-links a[aria-current],.category-links a:hover{background:var(--navy);color:white;border-color:var(--navy)}.search-controls{margin-bottom:35px;padding:24px 26px 18px;background:var(--ivory);border-radius:4px}.search-controls>label{display:block;font-size:12px;color:var(--gold);margin-bottom:10px}.search-field{display:flex;max-width:660px}.search-field input{flex:1;min-width:0;padding:12px 15px;border:1px solid #b8c7be;background:white;font-size:14px;border-radius:3px 0 0 3px}.search-field button{border:1px solid #b8c7be;border-left:0;background:#e6ece4;color:var(--navy);padding:8px 20px;font-size:13px;border-radius:0 3px 3px 0}.search-controls [role=status]{font-size:12px;color:var(--muted);margin-top:12px;min-height:23px}.pagination{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin-top:40px}.pagination a,.pagination>span{min-width:43px;min-height:44px;display:grid;place-items:center;padding:5px 13px;font-size:13px}.pagination a{border:1px solid var(--line);border-radius:3px}.pagination a[aria-current],.pagination a:hover{background:var(--navy);color:white}.empty{border:1px solid var(--line);padding:35px;color:var(--muted)}#article-results:not(:empty){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.article-wrap{padding-top:35px;padding-bottom:55px}.article-layout{display:grid;grid-template-columns:minmax(0,790px) 220px;gap:64px}.article-header .eyebrow{margin:24px 0 21px}.article h1{font-size:39px;line-height:1.6;font-weight:500;margin-bottom:24px}.article .lede{font-size:17px;line-height:2.1}.article-meta{font-size:11px;color:var(--muted);margin-top:27px}.article-meta span{display:block;margin-top:6px}.article-sidebar{padding-top:32px}.article-toc{position:sticky;top:115px;font-size:12px;color:var(--muted);padding-left:22px;border-left:1px solid var(--line)}.article-toc strong{font-size:13px;color:var(--navy)}.article-toc ol{padding-left:18px;line-height:1.9;margin-top:18px}.article-toc li+li{margin-top:13px}.article-toc a:hover{color:var(--gold);text-decoration:underline}.sidebar-contact{margin-top:40px;border-top:1px solid var(--line);padding-top:23px;font-size:12px}.sidebar-contact strong{font-size:15px;display:block;margin-bottom:17px}.sidebar-contact a{display:block;margin:9px 0;color:var(--gold)}.takeaway{padding:26px 30px;background:var(--soft);border-left:3px solid #739788;margin:35px 0;border-radius:0 3px 3px 0}.takeaway strong{font-size:14px}.takeaway p{font-size:15px;margin-top:10px;line-height:2}.article>section{margin:44px 0;scroll-margin-top:110px}.article>section h2{font-size:25px;line-height:1.65;margin-bottom:19px;font-weight:500}.article>section p{line-height:2.15;font-size:16px;margin-bottom:16px}.article .checklist{padding-left:22px;line-height:2.5}.article .checklist li::marker{color:#739788}.article .sources{border-top:1px solid var(--line);padding-top:25px}.article .sources h2{font-size:16px;font-weight:600}.sources ul{font-size:12px;line-height:2.3;padding-left:18px}.sources a{color:var(--gold);border-bottom:1px solid #c2b49a;overflow-wrap:anywhere}.article-cta{padding:34px;background:var(--ivory);margin-top:44px;border-radius:4px}.article-cta h2{font-size:25px;margin-bottom:14px}.article-cta p{font-size:14px}.article-cta .fine-print{font-size:12px;margin-top:20px}.article-cta .fine-print a{text-decoration:underline}
.contact-options{display:grid;grid-template-columns:1fr;gap:24px;padding-top:40px}.contact-primary,.contact-store{padding:35px;border:1px solid var(--line);border-radius:4px}.contact-primary{position:relative;overflow:hidden;background:var(--navy);color:#fff;border:0}.contact-primary:after{content:"";width:170px;height:170px;position:absolute;right:-65px;bottom:-85px;border:1px solid #9bb4b02e;border-radius:50%;box-shadow:0 0 0 35px #9bb4b00c;pointer-events:none}.contact-primary .eyebrow{color:#d5c8ac}.contact-primary p:not(.eyebrow){font-size:13px;margin-top:16px;color:#c8d9d6}.contact-primary .quiet-link{color:#e1e9e4;margin-top:18px;font-size:12px}.contact-big{font-size:38px;letter-spacing:.025em;font-weight:500;line-height:1.4;display:block}.contact-store{background:#fff}.contact-store h2{font-size:21px;font-weight:500;margin-bottom:24px}.contact-store .fine-print{margin-top:20px;font-size:12px}.consultation-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:80px}#consultation-helper h2{font-size:28px;margin-bottom:14px}#consultation-helper>p{font-size:13px;color:var(--muted)}fieldset{margin:0;padding:0;border:0;min-width:0}.no-js #consultation-helper fieldset{display:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px;margin-bottom:26px}.form-grid label,.copy-label{font-size:13px;color:var(--navy)}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,#consultation-text{display:block;width:100%;margin-top:9px;min-height:48px;padding:12px 14px;background:#fff;border:1px solid #b9c7be;border-radius:3px;font-size:14px;color:var(--navy)}.form-grid textarea,#consultation-text{resize:vertical;line-height:1.85}.form-grid ::placeholder{color:#748179}#consultation-text{background:#edf3eb;font-size:13px;margin-bottom:18px}#copy-status{font-size:12px;min-height:24px;margin-top:14px}.contact-address{border-left:1px solid var(--line);padding-left:36px}.contact-address h2{font-size:26px}.contact-address h3{font-size:12px;color:var(--gold);margin-top:28px;margin-bottom:11px;font-weight:500}.contact-address address,.contact-address p,.contact-address>a{font-size:14px;line-height:2}.contact-address .text-link{margin-top:17px}.faq-list{max-width:1000px}.faq-list details{border-bottom:1px solid #cfd8ce}.faq-list summary{cursor:pointer;display:flex;justify-content:space-between;gap:28px;list-style:none;padding:24px 0;font-size:16px;color:var(--navy)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;font-weight:300;color:var(--gold);line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:14px;line-height:2;color:var(--muted);padding:0 35px 25px 0}
.site-footer{background:#0c2730;color:#c6d6d3;padding:60px 56px 25px;border-top:1px solid #42616a55}.footer-top{max-width:1208px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr .8fr;gap:56px}.footer-top .eyebrow{font-size:10px;color:#c7b18a}.footer-top strong{font-size:21px;color:#f4f4e9;font-weight:400;display:block;line-height:1.8}.footer-top p:not(.eyebrow){font-size:12px;line-height:2;margin-top:19px;max-width:430px}.footer-label{font-size:11px;display:block;margin-bottom:14px;color:#a7bfbd}.footer-phone{font-size:28px;display:block;line-height:1.5;margin-bottom:13px;color:#f4f4e9;letter-spacing:.025em}.footer-top a[href^="mailto:"]{font-size:12px}.footer-links{display:flex;flex-direction:column;gap:14px;font-size:12px}.footer-links a:hover{color:var(--champagne)}.footer-bottom{max-width:1208px;margin:45px auto 0;border-top:1px solid #34535b;padding-top:23px;display:flex;gap:28px;flex-wrap:wrap;font-size:10px;color:#9cb7b5}
@media(min-width:1600px){.hero{min-height:680px}.hero h1{font-size:74px}.hero-stage:before{background:radial-gradient(ellipse at 70% 35%,#2f586345,transparent 54%)}}
@media(max-width:1199px){.wrap{padding-left:40px;padding-right:40px}.header-phone{display:none}.site-header{padding:0 40px}#nav{gap:26px}.hero{gap:25px;min-height:570px}.hero h1{font-size:54px}.hero .lede{font-size:13px}.hero-visual{align-self:center}.service-card{padding:27px 24px}.story-grid{gap:60px}.journal-grid{gap:42px}.article-layout{gap:38px;grid-template-columns:minmax(0,1fr) 190px}.service-detail{gap:48px}.consultation-layout{gap:48px}.contact-big{font-size:32px}.footer-top{gap:35px}}
@media(max-width:979px){.wrap{padding-left:30px;padding-right:30px}.site-header{height:76px;padding:0 30px}.brand strong{font-size:22px}.brand-mark{width:38px;height:42px;font-size:30px}.menu{display:flex;align-items:center;gap:12px;border:1px solid #bbc8bd;min-height:43px;padding:7px 13px;background:transparent;font-size:13px;color:var(--navy);border-radius:3px}.js #nav{display:none;position:absolute;top:76px;left:0;right:0;height:auto;background:var(--paper);padding:17px 30px 22px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #173a4310;grid-template-columns:repeat(3,1fr);gap:5px 20px}.js #nav.open{display:grid}#nav a{height:auto;min-height:46px;padding:12px 4px;justify-content:center}#nav a:after{bottom:4px}.no-js .site-header{height:auto;min-height:76px;flex-wrap:wrap;padding-top:16px;padding-bottom:12px}.no-js .menu{display:none}.no-js #nav{display:flex;position:static;flex-wrap:wrap;gap:5px 18px;width:100%}.hero{padding-top:42px;padding-bottom:48px;min-height:520px;grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:44px}.hero .eyebrow{font-size:9px}.hero-subtitle{font-size:11px}.hero-subtitle span+span:before{margin:0 8px}.hero .lede{font-size:13px}.hero .actions{gap:18px}.hero .button{padding:12px 19px;font-size:13px;gap:15px}.hero .text-link{font-size:13px}.drawing-label{font-size:8px;letter-spacing:.05em}.drawing-note{font-size:9px;line-height:1.9}.fact-strip{gap:20px;padding-top:21px;padding-bottom:21px}.fact-strip>div{gap:12px;padding-right:18px}.fact-icon{width:26px;height:26px}.fact-strip strong,.fact-strip a{font-size:12px}.fact-strip>div>div>span{font-size:9px}.section{padding-top:64px;padding-bottom:64px}.section-head h2,.story-heading h2{font-size:31px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.story-grid{gap:40px}.story-detail>p{font-size:14px}.story-principles{gap:10px 16px}.process{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.journal-grid{grid-template-columns:.8fr 1.2fr;gap:32px}.journal-grid .article-card{padding:28px}.journal-grid .article-card h3{font-size:22px}.article-grid,#article-results:not(:empty){grid-template-columns:repeat(2,minmax(0,1fr))}.consult-band>.wrap{gap:40px}.consult-band h2{font-size:31px}.about-grid{gap:35px}.about-grid h2{font-size:24px}.company-facts{padding:25px}.trust-grid{gap:25px}.service-detail{gap:30px;grid-template-columns:1fr 1fr}.service-detail h2{font-size:26px}.preparation{padding:25px}.preparation h2{font-size:22px}.article-layout{display:block}.article-sidebar{display:none}.article{max-width:760px;margin:auto}.contact-options{gap:18px}.contact-primary,.contact-store{padding:27px}.contact-big{font-size:27px}.contact-store h2{font-size:19px}.consultation-layout{gap:35px;grid-template-columns:1.4fr 1fr}.contact-address{padding-left:25px}.site-footer{padding-left:30px;padding-right:30px}.footer-top{grid-template-columns:1.3fr 1fr;gap:30px}.footer-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:26px}.footer-top strong{font-size:19px}}
@media(max-width:639px){html{scroll-padding-top:96px}body{font-size:15px;padding-bottom:calc(67px + env(safe-area-inset-bottom))}.wrap{padding-left:22px;padding-right:22px}.site-header{height:72px;padding:0 22px;gap:18px}.brand{gap:10px}.brand strong{font-size:20px;letter-spacing:.12em}.brand small{font-size:7px;letter-spacing:.15em}.brand-mark{width:34px;height:38px;font-size:28px}.brand-mark span{font-size:16px}.menu{font-size:12px;min-height:42px;padding:6px 11px}.js #nav{top:72px;grid-template-columns:repeat(2,1fr);padding:13px 22px 21px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:28px;gap:14px;min-height:0}.hero-copy{padding:0}.hero .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:22px}.hero h1{font-size:44px;line-height:1.4;letter-spacing:.025em}.hero-subtitle{font-size:11px;margin-top:20px;margin-bottom:19px}.hero .lede{font-size:13px;line-height:2;max-width:440px}.hero .actions{margin-top:25px;gap:22px}.hero .button{min-height:49px;padding:11px 22px;gap:23px}.hero .quiet-link{margin-top:8px;font-size:11px}.hero-visual{padding:10px 0 0;max-width:480px;width:100%;justify-self:center}.drawing-label{font-size:7px;letter-spacing:.08em;padding-top:12px}.drawing-note{font-size:9px;padding-top:11px;letter-spacing:0}.drawing-note span{margin-right:8px}.hero-bottom{background:#ffffff03}.fact-strip{grid-template-columns:1fr;gap:0;padding-top:7px;padding-bottom:7px}.fact-strip>div{border-right:0;border-bottom:1px solid #48626a66;padding:14px 0;gap:15px}.fact-icon{width:25px;height:25px}.fact-strip>div>div{display:flex;justify-content:space-between;align-items:center;gap:16px;flex:1}.fact-strip>div>div>span{font-size:10px}.fact-strip strong,.fact-strip a{font-size:12px}.section{padding-top:49px;padding-bottom:49px}.section-head{display:block;margin-bottom:28px}.section-head h2{font-size:27px;line-height:1.6}.section-head .eyebrow{font-size:10px;margin-bottom:12px}.section-head p:not(.eyebrow){font-size:13px;line-height:1.9}.section-head .text-link{margin-top:18px;font-size:12px}.service-grid{grid-template-columns:1fr;gap:15px}.service-card{padding:25px}.card-top{margin-bottom:19px}.service-icon{width:38px;height:38px}.number{font-size:17px}.service-card .eyebrow{font-size:8px}.service-card h3{font-size:21px;margin-bottom:11px}.service-card>p:not(.eyebrow){min-height:0;font-size:13px}.service-card .card-link{padding-top:15px;margin-top:21px;font-size:11px}.story-grid{grid-template-columns:1fr;gap:28px}.story-heading h2{font-size:29px;line-height:1.7}.story-heading .text-link{margin-top:17px;font-size:12px}.story-detail strong{font-size:16px}.story-detail>p{font-size:14px;line-height:2}.story-principles{font-size:11px;gap:12px;margin-top:21px;padding-top:20px}.process{gap:30px 24px}.process li{padding-top:22px}.process span{font-size:29px;margin-bottom:19px}.process h3{font-size:16px;margin-bottom:11px}.process p{font-size:12px;line-height:2}.journal-grid{grid-template-columns:1fr;gap:0}.journal-grid .section-head .text-link{margin-top:17px}.journal-grid .article-card{padding:26px}.journal-grid .article-card:only-child{min-height:265px}.journal-grid .article-card h3{font-size:22px}.article-grid,#article-results:not(:empty){grid-template-columns:1fr;gap:17px}.article-card{padding:25px}.article-card h3{font-size:21px}.article-card-meta{font-size:10px;margin-bottom:18px}.article-card p{font-size:13px}.consult-band{padding:49px 0}.consult-band>.wrap{grid-template-columns:1fr;gap:26px}.consult-band h2{font-size:28px;line-height:1.7}.consult-band p:not(.eyebrow){font-size:13px}.consult-band .eyebrow{font-size:10px}.consult-band .actions{gap:20px}.page-intro{padding-top:24px;padding-bottom:36px}.page-intro .eyebrow{font-size:9px;margin-top:27px;margin-bottom:14px}.page-intro h1{font-size:31px;line-height:1.5;margin-bottom:17px}.page-intro .lede{font-size:14px;line-height:2}.page-intro:after{right:-80px}.breadcrumbs{font-size:10px;gap:7px;line-height:1.8;margin-bottom:17px}.about-grid,.trust-grid,.service-detail{grid-template-columns:1fr;gap:34px}.about-grid h2{font-size:24px}.about-grid p{font-size:14px}.about-grid .english-name{font-size:12px}.company-facts{padding:25px}.trust-grid article{padding-left:22px}.trust-grid h3{font-size:19px}.trust-grid p{font-size:13px}.service-detail h2{font-size:25px;line-height:1.6}.service-detail>div>p{font-size:14px}.parameter-list{font-size:14px}.preparation{padding:26px}.preparation h2{font-size:23px}.knowledge-section{padding-top:28px;padding-bottom:49px}.category-links{gap:8px}.category-links a{font-size:12px;padding:8px 13px}.search-controls{padding:20px 18px 15px}.search-field input{font-size:16px;padding:10px 11px}.search-field button{padding:8px 12px;font-size:12px}.article-wrap{padding-top:25px;padding-bottom:25px}.article h1{font-size:29px;line-height:1.65;margin-bottom:21px}.article .lede{font-size:15px;line-height:2}.article-header .eyebrow{font-size:9px;margin-top:27px;margin-bottom:18px}.article-meta{font-size:10px;margin-top:21px}.takeaway{padding:22px;margin:30px 0}.takeaway p{font-size:14px}.article>section{margin:35px 0;scroll-margin-top:98px}.article>section h2{font-size:22px;line-height:1.7;margin-bottom:17px}.article>section p{font-size:15px;line-height:2.1}.article .checklist{font-size:14px;line-height:2.5}.article-cta{padding:25px}.article-cta h2{font-size:22px}.article-cta .actions{gap:12px}.article-cta .button{font-size:13px;padding:10px 15px;min-height:46px}.contact-options,.consultation-layout{grid-template-columns:1fr;gap:24px}.contact-options{padding-top:29px}.contact-primary,.contact-store{padding:27px}.contact-big{font-size:30px;letter-spacing:0}.contact-store h2{font-size:21px}.contact-address{border-left:0;border-top:1px solid var(--line);padding:30px 0 0;margin-top:10px}.form-grid{grid-template-columns:1fr;gap:18px}.form-grid .full{grid-column:auto}.form-grid input,.form-grid select,.form-grid textarea,#consultation-text{font-size:16px}#consultation-helper h2{font-size:25px}.faq-list summary{font-size:15px;padding:22px 0}.faq-list details p{font-size:13px;line-height:2}.site-footer{padding:43px 22px 27px}.footer-top{grid-template-columns:1fr;gap:32px}.footer-top strong{font-size:18px;line-height:1.9}.footer-top p:not(.eyebrow){font-size:11px}.footer-phone{font-size:29px}.footer-links{gap:18px 24px;font-size:11px}.footer-bottom{gap:14px;font-size:9px;line-height:1.8;margin-top:31px;padding-top:22px}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:#fcfbf8f7;backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -5px 20px #12374108}.mobile-contact a{display:grid;place-items:center;min-height:45px;font-size:12px;border:1px solid var(--line);border-radius:3px}.mobile-contact a:first-child{background:var(--navy);color:white;border-color:var(--navy)}.mobile-contact a:nth-child(2){background:#eae6da;color:var(--navy)}}
h1,h2,h3{text-wrap:balance}
@media(max-width:359px){.wrap{padding-left:18px;padding-right:18px}.site-header{padding:0 18px}.brand strong{font-size:19px}.hero h1{font-size:39px}.hero .button{padding:11px 17px}.hero .actions{gap:17px}.fact-strip>div>div{gap:10px}.contact-big{font-size:27px}.section-head h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-copy,.hero-visual{opacity:1;transform:none}}
/* Company context within text articles and the company introduction page. */
.article-company { padding: 28px 0; border-top: 1px solid #d7ded9; border-bottom: 1px solid #d7ded9; }
.article-company .eyebrow { margin-top: 0; color: #796239; }
.article-company > p a, .company-service-links a, .company-scene-links a { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #b7a477; }
.company-service-links, .company-scene-links { padding-left: 1.2em; }
.company-service-links li + li, .company-scene-links li + li { margin-top: 12px; }
.company-service-links p { margin: 6px 0 0; font-size: .93em; }
.article-meta a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 640px) { .article-company { padding: 22px 0; } }
/* Header navigation: clear destinations, restrained brand accents. */
#nav a{height:44px;min-height:44px;padding:9px 14px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:500;letter-spacing:.02em;justify-content:center;transition:background .18s,color .18s,border-color .18s,box-shadow .18s}
#nav a::after{content:none}
#nav a[aria-current="page"]{background:var(--navy);border-color:var(--navy);color:var(--paper);font-weight:600;box-shadow:0 2px 6px #12374116}
#nav a[aria-current="page"]::after{content:"";left:50%;right:auto;bottom:4px;width:14px;height:2px;border-radius:1px;background:var(--champagne);transform:translateX(-50%)}
#nav a[href="/verify-entry/"]{border-color:#d6c7ab;background:#faf6ed;color:#6a512e}
#nav a:focus-visible{outline-offset:3px;z-index:1}
.menu{min-height:44px;border-radius:6px;background:#f1f4ef;border-color:#ced9cf;transition:background .18s,color .18s,border-color .18s}
.menu[aria-expanded="true"]{background:var(--navy);border-color:var(--navy);color:var(--paper)}
@media(hover:hover){#nav a:not([aria-current]):hover{background:#e2eae3;border-color:#cad7cd;color:var(--navy)}#nav a[aria-current]:hover{background:#204954;color:var(--paper)}#nav a[href="/verify-entry/"]:hover{background:#f0e6d2;border-color:#bba279;color:#604822}.menu:hover{border-color:#82998c}}
@media(min-width:980px){#nav{height:auto;gap:4px;padding:5px;border:1px solid #e0e6df;border-radius:9px;background:#f0f3ee;box-shadow:inset 0 1px 0 #ffffffb3}#nav a[href="/verify-entry/"]{margin-left:6px}}
@media(max-width:979px){.js #nav{gap:8px;border-radius:0 0 12px 12px;grid-template-columns:repeat(3,minmax(0,1fr));box-shadow:0 14px 28px #12374114}#nav a{height:auto;min-height:48px;padding:11px 10px;border-color:#dfe6df;background:#f2f5f0}.no-js #nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}
@media(max-width:639px){.js #nav,.no-js #nav{grid-template-columns:repeat(2,minmax(0,1fr))}#nav a{font-size:14px}.menu{min-height:44px;padding:7px 12px}}
/* Shared surfaces and reading details, aligned with the main navigation. */
.button{border-radius:6px;min-height:48px;font-weight:600}.button.secondary{background:#ffffff80}
.section-head .eyebrow,.story-heading>.eyebrow{display:flex;align-items:center;gap:14px}.section-head .eyebrow:after,.story-heading>.eyebrow:after{content:"";width:38px;height:1px;background:#bba77f}
.hero-visual{padding:24px;border:1px solid #607d785e;border-radius:12px;background:linear-gradient(145deg,#ffffff05,#0000000b);box-shadow:0 18px 48px #0000000c}.hero-visual .drawing-label{border-top:0;padding-top:0}.drawing-note{line-height:1.9}
.hero .button,.consult-band .button{box-shadow:0 4px 16px #00000012}.hero-bottom{background:#ffffff06}
.service-card{padding:30px;border-color:#d6e0d8;border-radius:12px;background:linear-gradient(155deg,#fff 60%,#f5f7f2);box-shadow:0 4px 14px #12374105}.service-icon{width:62px;height:62px;padding:11px;background:#eef4ed;border:1px solid #dce7dc;border-radius:10px;color:#476f69}.service-card .number{color:#8d7654;font-size:21px}.service-card h3{font-size:22px}.service-card>p:not(.eyebrow){font-size:14px}.service-card:focus-visible:before{transform:scaleY(1)}
.card-link>span{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border:1px solid #d7dfd5;border-radius:50%;font-size:16px;color:var(--navy);background:#f5f7f2}.card-link{font-size:13px;color:var(--navy)}
.company-story{background:linear-gradient(110deg,#edf2ec,#f5f6f0)}.story-detail{border-left:2px solid #b9a27a;padding-left:32px}.story-principles{gap:12px 18px}.story-principles span{padding:5px 0}
.process{gap:20px}.process li{padding:26px 24px;background:#fff;border:1px solid #dbe3d8;border-top:2px solid #b6a077;border-radius:8px;box-shadow:0 3px 12px #12374104}.process li:before{content:none}.process span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#edf3ec;font:25px/1 var(--serif);color:#46685f;margin-bottom:22px}.process h3{font-weight:600}.process p{font-size:14px}
.article-card{border-radius:12px;border-color:#d6e0d8;padding:28px;background:#fff;box-shadow:0 4px 14px #12374105}.article-card h3{font-weight:600;line-height:1.65}.article-card p{font-size:14px}.article-card-meta{align-items:center;margin-bottom:20px}.article-card-meta>span{padding:4px 9px;background:#edf3eb;border:1px solid #dce5d8;border-radius:4px;color:#486654}.article-card-meta>span:before{content:none}.article-card .card-link{border-top:1px solid #e7ece4;margin-top:24px;padding-top:16px}.journal-grid .article-card{padding:28px 32px}.journal-grid .article-card h3{font-size:23px}.journal-grid .article-card .card-link{margin-top:18px}
.page-intro{background:linear-gradient(110deg,#edf3ed,#f6f6ef)}.company-facts{border:1px solid #d7e0d4;border-top:2px solid #ad9569;border-radius:10px;box-shadow:0 6px 20px #12374105}.trust-grid article{padding:24px;border:1px solid #dce4d8;border-left:3px solid #b29c75;border-radius:0 9px 9px 0;background:#fafbf7}.preparation{border:1px solid #d7e1d3;border-top:2px solid #a68f65;border-radius:10px;box-shadow:0 5px 18px #12374105}.chips span{border-radius:5px;background:#f4f7f0;padding:7px 12px}.scope-note{background:#f4f5ed;padding:16px 20px;border-radius:0 6px 6px 0}
.category-links{gap:9px;margin-top:4px}.category-links a{display:flex;align-items:center;border-radius:6px;background:#fff;border-color:#d6dfd3;font-weight:500;padding:9px 17px}.category-links a[aria-current]{background:var(--navy);color:#fff;box-shadow:0 2px 7px #12374112}
.search-controls{background:#fff;border:1px solid #d8e2d5;border-radius:10px;padding:24px 26px 17px;box-shadow:0 4px 18px #12374104}.search-controls>label{font-size:14px;color:var(--navy);font-weight:600}.search-field{max-width:none}.search-field input{min-height:50px;background:#f6f8f3;border-radius:6px 0 0 6px;border-color:#bdcbbd}.search-field button{border-radius:0 6px 6px 0;border-color:#bdcbbd;background:#edf2e9;font-weight:500}.pagination a{border-radius:6px;background:#fff}.empty{border-radius:8px;background:#f8faf4}
.page-article{background:#f4f6f0}.article{padding:36px 38px;border:1px solid #dfe6da;border-radius:12px;background:#fff;box-shadow:0 5px 20px #12374104}.article-header{padding-bottom:25px;border-bottom:1px solid #e3e9de}.article h1{font-size:36px;line-height:1.6}.article-meta{font-size:12px;line-height:1.9}.article-header .eyebrow{margin-top:6px}.takeaway{border-left-color:#b39a6d;border-radius:0 8px 8px 0;background:#f1f5ea;padding:24px 26px}.takeaway strong{color:#5d623f;letter-spacing:.04em}.article>section h2{font-weight:600}.article .sources{background:#f7f8f3;border:1px solid #e1e6d9;border-radius:8px;padding:20px 24px}.article .sources h2{margin-bottom:10px}.article .sources ul{margin-bottom:0}
.article-toc{padding:22px;border:1px solid #d7e1d1;border-top:2px solid #b9a173;border-radius:8px;background:#edf2e7}.article-toc a{display:block;padding:4px 0}.sidebar-contact{padding:22px;border:1px solid #dce4d7;border-radius:8px;background:#fff;margin-top:22px}
.article>section.article-company{padding:26px;background:#f4f7ef;border:1px solid #dce5d4;border-radius:9px}.article-company .eyebrow{font-size:10px}.company-service-links li+li{padding-top:12px;border-top:1px solid #dce5d5}
.article-cta{background:var(--navy);color:#dae5de;border-radius:10px;padding:30px}.article-cta h2{color:#fff}.article-cta .fine-print{color:#c4d7ce}.article-cta .button{background:var(--champagne);border-color:var(--champagne);color:var(--deep)}.article-cta .button:hover{background:#f0dfba}.article-cta .button.secondary{background:transparent;color:#fff;border-color:#97b1a8}.article-cta .button.secondary:hover{background:#28535c;color:#fff}.article-cta .fine-print a{color:#fff;text-underline-offset:4px}
.contact-primary,.contact-store{border-radius:12px;box-shadow:0 6px 20px #12374106}.contact-store{border-color:#d6e0d3;background:linear-gradient(145deg,#fff,#f6f8f1)}#consultation-helper{padding:30px;border:1px solid #d9e3d4;border-radius:12px;background:#fff;box-shadow:0 5px 18px #12374104}.form-grid input,.form-grid select,.form-grid textarea,#consultation-text{border-radius:6px;background:#fafbf8}#consultation-text{background:#f0f5e9}.contact-address{align-self:start;padding:26px;border:1px solid #dce4d7;border-top:2px solid #b49a6d;border-radius:9px;background:#f4f7ee}.contact-address h2{font-size:24px}.contact-address address{font-style:normal}
.faq-list details{margin-bottom:10px;border:1px solid #d6e0d1;border-radius:8px;background:#fff}.faq-list summary{padding:20px 23px;min-height:64px;font-weight:500}.faq-list details p{padding:0 23px 23px}.faq-list details[open]{background:#f8faf3;border-color:#b8c9b4}.footer-links a{padding:5px 0;font-size:13px}.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1199px){.hero-visual{padding:18px}.article{padding:30px}.consultation-layout{gap:32px}}
@media(max-width:979px){.hero-visual{padding:14px}.service-card{padding:26px}.service-icon{width:56px;height:56px;padding:10px}.story-detail{padding-left:24px}.trust-grid article{padding:20px}.process{gap:16px}.article{padding:30px}#consultation-helper{padding:24px}.contact-address{padding:23px}.consultation-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
@media(max-width:639px){.hero-visual{padding:15px;margin-top:15px;border-radius:9px}.hero-visual .drawing-label{font-size:7px}.service-card{padding:24px}.service-card h3{font-size:21px}.service-card>p:not(.eyebrow){min-height:0}.story-detail{padding-left:20px}.process{grid-template-columns:1fr;gap:12px}.process li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:4px 16px;padding:20px}.process span{grid-row:1/3;width:40px;height:40px;font-size:23px;margin:0}.process h3{grid-column:2;font-size:17px;margin:0}.process p{grid-column:2;font-size:13px}.article-card,.journal-grid .article-card{padding:24px}.article-card h3,.journal-grid .article-card h3{font-size:21px}.article-card-meta{font-size:10px;gap:8px}.category-links a{font-size:12px;padding:8px 12px}.search-controls{padding:19px 17px 12px}.search-field button{padding:8px 14px}.page-article{background:var(--paper)}.article{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}.article h1{font-size:29px}.article-header{padding-bottom:22px}.takeaway{padding:20px}.article>section.article-company{padding:22px}.article .sources{padding:18px 20px}.article-cta{padding:25px 22px}.article-cta .actions{gap:12px}.article-cta .button{padding:10px 14px;font-size:13px}.consultation-layout{grid-template-columns:1fr;gap:26px}#consultation-helper{padding:22px 18px}.contact-address{padding:23px}.faq-list summary{font-size:15px;padding:19px 18px;gap:18px}.faq-list details p{padding:0 18px 20px}.mobile-contact a:first-child{border-radius:6px}}

/* Dual-site detail refinement — editorial surfaces, September 2026. */
:root{--paper:#fcfbf8;--ivory:#f3f1eb;--ink:#243942;--navy:#123741;--muted:#566971;--line:#dddcd3;--soft:#f1f2ec}
::selection{background:#e5cea1;color:#123741}
:focus-visible{outline:2px solid #98763f;outline-offset:5px}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
.wrap{max-width:1320px}
.site-header{border-bottom-color:#e2dfd5;box-shadow:0 2px 18px #102d3505}
.brand small{color:#6e624c}
#nav{box-shadow:none}
@media(min-width:980px){#nav{padding:0;border:0;background:transparent;gap:4px}#nav a{font-size:14px;font-weight:500;padding:9px 13px;border-radius:3px}#nav a[aria-current="page"]{box-shadow:none}#nav a[href="/verify-entry/"]{background:transparent}}
.button{border-radius:3px;box-shadow:none;min-height:48px;transition:background .2s,color .2s,border-color .2s,transform .2s}
.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}
.text-link,.quiet-link{min-height:44px;align-items:center}
.hero{padding-top:64px;padding-bottom:58px;gap:48px}
.hero .lede{font-size:15px;line-height:2.1;color:#cfdbdc;max-width:32em}
.hero .eyebrow{color:#e3d2af}.hero h1{letter-spacing:.01em}
.hero-visual{border-radius:3px;padding:25px;background:#ffffff02;box-shadow:none}
.drawing-label{color:#bbcccd}.drawing-note{color:#c6d0ca}
.fact-strip>div>div>span{font-size:11px;color:#b5c7c8}.fact-strip strong,.fact-strip a{font-size:13px}
.credential-rail{display:grid;grid-template-columns:1.1fr 1fr .8fr 1.05fr;align-items:center;gap:30px;padding-top:29px;padding-bottom:29px;border-bottom:1px solid var(--line)}
.credential-rail .eyebrow{display:block;font-size:9px;letter-spacing:.15em;color:#8a7047;margin-bottom:8px}
.credential-rail>div>strong{font-size:17px;font-weight:500}
.credential-rail>a{position:relative;display:grid;gap:5px;min-height:54px;border-left:1px solid var(--line);padding-left:24px}
.credential-rail>a>span:first-child{font-size:12px;color:var(--muted)}
.credential-rail>a>strong{font:23px/1.25 Georgia,serif;letter-spacing:.025em;font-variant-numeric:tabular-nums}
.credential-rail>a>span:last-child{position:absolute;right:0;top:17px;color:#8a7047}
.credential-rail>p{font-size:12px;line-height:1.9;color:var(--muted);border-left:1px solid var(--line);padding-left:24px}
.section-head h2,.story-heading h2{letter-spacing:.02em;font-weight:500}
.section-head>div>p:not(.eyebrow){font-size:15px;line-height:1.9}
.service-grid{gap:22px}.service-card{background:#fff;border:1px solid var(--line);border-radius:3px;box-shadow:none;padding:30px;display:flex;flex-direction:column}
.service-card .card-top{margin-bottom:22px}.service-icon{width:52px;height:52px;border-radius:0;padding:8px;border:0;background:transparent;color:#53727a}
.service-card .number{font:24px/1 Georgia,serif;color:#a38c65}
.service-card .eyebrow{font-size:10px;color:#806947;letter-spacing:.1em}
.service-card h3{font-size:22px;font-weight:500}.service-card>p:not(.eyebrow){font-size:14px;line-height:1.95;min-height:0}
.service-scenes{display:flex;flex-wrap:wrap;gap:6px 12px;padding:18px 0 24px;color:#68757a;font-size:11px}
.service-scenes span+span{border-left:1px solid #c9cec9;padding-left:12px}
.service-card .card-link{margin-top:auto;border-top:1px solid #e8e6df;padding-top:18px}
.card-link>span{border-radius:50%;background:transparent}.service-card:hover,.article-card:hover{box-shadow:0 10px 26px #16343d08;border-color:#ad9a7d}
.company-story{background:#f0f0e9}.story-detail{border-left:1px solid #b5a181}
.story-detail>p{font-size:16px;line-height:2}.story-principles{border-top:1px solid #d8dacd;padding-top:20px}
.process li{border:0;border-top:1px solid #b3a17d;border-radius:0;box-shadow:none;background:transparent;padding:25px 18px 0 0}
.process span{font:32px/1 Georgia,serif;width:auto;height:auto;display:block;background:transparent;color:#917751;border-radius:0;margin-bottom:23px}
.process p{font-size:14px;line-height:1.9}.process h3{font-weight:500}
.journal-section{background:#f2f1eb}
.article-card,.journal-grid .article-card{padding:28px;border-radius:3px;background:#fff;box-shadow:none;border-color:var(--line)}
.article-card h3,.journal-grid .article-card h3{font-weight:500;font-size:22px;line-height:1.7;text-wrap:pretty}
.article-card p{font-size:14px;line-height:1.95}.article-card-meta{font-size:12px;gap:12px}
.article-card-meta>span{padding:0;border:0;background:transparent;color:#80643b;border-radius:0}
.article-card-meta time{font:12px/1.4 var(--sans);font-variant-numeric:tabular-nums;color:#67767b}
.article-card .card-link{border-color:#e7e4dc}.journal-grid .article-card .card-link{margin-top:20px}
.page-intro{position:relative;background:#123741;color:#fff;border-bottom:1px solid #314d53;padding-top:35px;padding-bottom:54px;overflow:hidden}
.page-intro .breadcrumbs{color:#adbdbe;margin-bottom:32px}.page-intro .breadcrumbs a{color:#c2cfcc}.page-intro .breadcrumbs [aria-current]{color:#e1d3b5}
.intro-layout{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:64px;align-items:center}
.page-intro h1{color:#fff;line-height:1.45;font-size:clamp(32px,3.5vw,46px);font-weight:500;letter-spacing:.015em;margin-bottom:22px}
.page-intro .eyebrow{color:#d7bf95;font-size:11px;letter-spacing:.16em;margin-bottom:18px}
.page-intro .lede{color:#c6d4d5;font-size:16px;line-height:1.95;max-width:47em}
.intro-signature{border-left:1px solid #7d949144;padding:20px 0 20px 50px;display:grid;gap:26px;color:#bfa67b}
.intro-signature>span{font:80px/1 Georgia,serif;position:relative;width:max-content}.intro-signature>span>span{font:30px/1 Georgia,serif;position:absolute;right:-22px;top:-2px}
.intro-signature small{font:9px/1.8 var(--sans);letter-spacing:.13em;color:#a6bbb9}
.about-grid>div>p{font-size:16px;line-height:2.05}.company-facts,.preparation,.contact-address{border-radius:3px;box-shadow:none;background:#f6f5ef;border-color:#d8d8cd}
.trust-grid article{background:transparent;border:0;border-top:1px solid #b9a781;border-radius:0;padding:24px 0}
.company-facts dd,.company-facts strong{overflow-wrap:anywhere}.service-detail h2{font-weight:500}
.preparation{padding:30px}.preparation h2{font-size:25px}.preparation li{font-size:15px;line-height:1.9;margin-bottom:12px}
.chips span{background:#f5f3ec;border-radius:2px}.scope-note{border-left-color:#a68d63;background:#f3f1e9;border-radius:0;padding:18px 22px;font-size:14px;line-height:1.95}
.certificate-section{background:#f2f1eb}.certificate-card{border-radius:3px;border-color:#d6d5ca}.certificate-preview{background:#eae9e2}.certificate-copy{background:#fff;padding:30px}.certificate-copy h3{font-weight:500}
.certificate-number{font-size:16px;font-variant-numeric:tabular-nums}.certificate-links{border-top:1px solid var(--line);padding-top:15px}.certificate-description{font-size:15px;line-height:1.95}
.knowledge-section{padding-top:36px}.category-links{gap:8px}.category-links a{border-radius:3px;border-color:#d8d8ce;padding:10px 17px;min-height:44px;font-size:13px}
.knowledge-tools{gap:12px 24px;font-size:14px}.knowledge-tools a{min-height:44px;display:inline-flex;align-items:center;gap:12px;text-decoration:none;border-bottom:1px solid #b7a477}
.search-controls{background:#f5f4ee;border-color:#dddcd1;border-radius:3px;box-shadow:none;padding:24px}
.search-controls>label{font-size:15px}.search-field input{background:#fff;border-radius:3px 0 0 3px;font-size:16px;min-width:0}.search-field button{border-radius:0 3px 3px 0;background:#e9e9df;min-height:50px}
.search-field input:focus{outline:2px solid #92764a;outline-offset:2px;position:relative;z-index:1}.search-controls #search-status{min-height:1.8em;color:#576a70}
.pagination a{min-width:44px;min-height:44px;border-radius:3px}.standard-jump a{border-radius:3px;min-height:44px;align-content:center}.standard-list>section{scroll-margin-top:110px}
.topic-grid article{border-top:1px solid #a9997b}.topic-grid h3,.standard-list h2{font-weight:500}
.page-article{background:#f3f2ed}.article-wrap{padding-top:25px}.breadcrumbs{font-size:12px;line-height:1.9;flex-wrap:wrap;gap:7px 12px}
.article-layout{grid-template-columns:minmax(0,850px) minmax(195px,1fr);gap:38px;align-items:start}
.article{background:#fff;padding:42px 46px;border:1px solid #e0dfd6;border-radius:3px;box-shadow:none;min-width:0}
.article h1{font-size:clamp(28px,2.7vw,36px);font-weight:500;line-height:1.65;text-wrap:balance;letter-spacing:.015em}
.article .lede{font-size:17px;line-height:1.95;color:#52666c}.article-header{border-bottom:1px solid #e5e3d9;padding-bottom:24px}
.article-meta{font-size:12px;line-height:1.95}.article-meta time{font-variant-numeric:tabular-nums}
.reading-actions{margin-top:20px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;font-size:12px;color:var(--muted)}
.reading-actions button{min-height:40px;border:1px solid #c7ceca;border-radius:3px;background:#fff;color:#24434b;padding:8px 13px;font:inherit;cursor:pointer}
.reading-actions button:hover{background:#f3f2eb}.reading-actions [hidden]{display:none!important}.link-fallback{width:100%}.link-fallback input{display:block;width:100%;min-height:40px;border:1px solid #b2bfb9;background:#faf9f5;color:#24434b;padding:8px;font-size:14px}
.takeaway{background:#f3f2e9;border-color:#b19a6d;border-radius:0;padding:25px 27px;margin:30px 0}.takeaway strong{color:#74613f}.takeaway p{font-size:16px;line-height:1.95}
.article>section{margin:42px 0;scroll-margin-top:110px}.article>section h2{font-size:24px;font-weight:500;line-height:1.7;border-bottom:1px solid #e5e5db;padding-bottom:14px}
.article>section p{font-size:16px;line-height:2.1}.article .sources{border-radius:3px;background:#f8f7f2;padding:23px}.article .sources h2{font-size:16px;border:0;padding:0}.sources ul{font-size:13px;line-height:2}.sources li+li{margin-top:10px}.sources a{color:#725f3f}
.article>section.article-company{background:#f6f5ef;border-color:#e0dfd4;border-radius:3px;padding:26px}.article-cta{border-radius:3px;padding:30px}.article-cta h2{font-weight:500}
.article-sidebar{position:sticky;top:110px;padding-top:0}.article-toc{position:static;background:transparent;border:0;border-top:2px solid #b39a6e;padding:24px 0 0;border-radius:0;font-size:13px}
.article-toc strong{font-size:15px;font-weight:500}.article-toc ol{margin-top:18px;padding-left:22px}.article-toc li+li{margin-top:7px}.article-toc a{padding:7px 4px;line-height:1.75;border-left:2px solid transparent;transition:color .15s}
.article-toc a[aria-current="location"]{color:#123741;font-weight:600;border-left-color:#a98a56;background:#eae9df;padding-left:9px}
.sidebar-contact{padding:24px 0;border:0;border-top:1px solid #d7d8cd;border-radius:0;background:transparent;margin-top:24px}.sidebar-contact a{min-height:40px;font-size:13px;align-content:center}.sidebar-contact strong{font-weight:500}
.mobile-toc{display:none}.contact-primary,.contact-store,#consultation-helper{border-radius:3px;box-shadow:none}.contact-store{background:#f4f3ec;border-color:#d9d8ce}.contact-big{font-variant-numeric:tabular-nums}
#consultation-helper{border-color:#d8d9ce;padding:30px}.form-grid label{font-size:14px}.form-grid input,.form-grid select,.form-grid textarea,#consultation-text{border-radius:3px;font-size:16px;background:#fff}.form-grid input,.form-grid select{min-height:48px}#consultation-text{font-size:14px;background:#f7f6ef;line-height:1.9}
.faq-list details{border-radius:3px;border-color:#ddded2}.faq-list details[open]{background:#f6f5ed;border-color:#ad9c7e}.faq-list summary{font-weight:500;font-size:16px;line-height:1.75}.faq-list details p{font-size:15px;line-height:2}
.site-footer{background:#102f39}.footer-top>div:first-child>strong{font-weight:500;line-height:1.8}.footer-top>div:first-child>p{font-size:12px;line-height:1.9;color:#bcc9c8}.footer-links a{min-height:36px;align-content:center;font-size:13px}.footer-bottom{flex-wrap:wrap;gap:12px 24px}.back-top-link{display:inline-flex;gap:12px;align-items:center;min-height:44px;margin-left:auto}.mobile-contact{border-top-color:#dcd9cb}.mobile-contact a:first-child{border-radius:3px}
@media(min-width:1440px){.hero h1{font-size:66px}.hero .lede{font-size:16px}.article-layout{gap:48px}}
@media(max-width:1199px){.hero{gap:30px}.credential-rail{gap:24px;grid-template-columns:1.2fr 1fr 1fr}.credential-rail>p{grid-column:1/-1;border:0;padding:0}.credential-rail>p br{display:none}.intro-layout{gap:35px;grid-template-columns:minmax(0,1fr) 160px}.intro-signature{padding-left:35px}.article{padding:32px}.article-layout{gap:28px;grid-template-columns:minmax(0,1fr) 195px}}
@media(max-width:979px){.hero{padding-top:46px;gap:26px}.hero .lede{font-size:14px}.credential-rail{gap:24px}.credential-rail>a{padding-left:18px}.credential-rail>a>strong{font-size:20px}.intro-layout{grid-template-columns:minmax(0,1fr) 120px}.intro-signature{padding-left:26px}.intro-signature>span{font-size:65px}.intro-signature small{font-size:8px}.page-intro .lede{font-size:15px}.article-layout{display:block}.article-sidebar{display:none}.article{padding:36px}.mobile-toc{display:block;margin-top:24px;border:1px solid #dadbce;border-radius:3px;background:#f7f6f0}.mobile-toc summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;padding:16px 20px;min-height:50px;font-size:14px;color:var(--navy)}.mobile-toc summary::-webkit-details-marker{display:none}.mobile-toc[open] summary>span{transform:rotate(45deg)}.mobile-toc .article-toc{padding:0 20px 18px;border:0;background:transparent}.mobile-toc .article-toc strong{display:none}.mobile-toc .article-toc ol{margin:0;padding-left:20px}.service-grid{gap:18px}.service-card{padding:26px}.service-detail{gap:28px}.preparation{padding:25px}}
@media(max-width:639px){.hero{padding-top:36px;padding-bottom:28px;gap:22px}.hero h1{font-size:44px}.hero .lede{font-size:14px;line-height:2}.hero-visual{padding:19px;margin-top:0}.credential-rail{grid-template-columns:1fr 1fr;gap:22px 18px;padding-top:27px;padding-bottom:25px}.credential-rail>div{grid-column:1/-1}.credential-rail>a{border-left:0;border-top:1px solid #d6d5c9;padding:16px 0 0;min-height:66px}.credential-rail>a>strong{font-size:20px}.credential-rail>a>span:first-child{font-size:11px}.credential-rail>a>span:last-child{top:18px;font-size:12px}.credential-rail>p{margin:0;font-size:11px}.service-card{padding:26px}.service-card h3{font-size:22px}.service-scenes{padding-bottom:20px}.process li{padding:20px 0;grid-template-columns:35px minmax(0,1fr);gap:7px 18px;border-top:1px solid #c9b990}.process span{font-size:26px;grid-row:1/3;margin:3px 0 0}.process p{font-size:14px}.process h3{font-size:18px}.story-detail>p{font-size:15px}.article-card,.journal-grid .article-card{padding:24px}.article-card h3,.journal-grid .article-card h3{font-size:21px}.page-intro{padding-top:23px;padding-bottom:35px}.page-intro .breadcrumbs{margin-bottom:24px;font-size:11px}.intro-layout{display:block}.intro-signature{display:none}.page-intro h1{font-size:31px;line-height:1.55;margin-bottom:18px}.page-intro .eyebrow{font-size:10px}.page-intro .lede{font-size:14px;line-height:1.95}.about-grid>div>p{font-size:15px}.knowledge-section{padding-top:25px}.category-links{gap:7px}.category-links a{font-size:12px;padding:9px 11px}.search-controls{padding:20px 17px}.knowledge-tools{gap:7px 20px;font-size:13px}.article-wrap{padding-top:22px}.page-article{background:var(--paper)}.article{padding:0;border:0;background:transparent}.article h1{font-size:29px;line-height:1.65}.article .lede{font-size:16px}.article>section h2{font-size:23px}.article>section p{font-size:16px;line-height:2.1}.article-meta{font-size:12px}.article-header{padding-bottom:23px}.takeaway{padding:21px 20px}.takeaway p{font-size:15px}.article>section.article-company{padding:22px}.article .sources{padding:22px 18px}.sources ul{font-size:13px;padding-left:18px}.article-cta{padding:25px 22px}.breadcrumbs [aria-current="page"]{overflow-wrap:anywhere}.contact-big{font-size:32px}#consultation-helper{padding:24px 19px}.contact-address{padding:24px}.faq-list summary{font-size:15px}.footer-bottom{gap:10px 20px}.back-top-link{margin-left:0}.footer-phone{font-size:29px}}
@media(max-width:359px){.hero h1{font-size:38px}.page-intro h1{font-size:28px}.article h1{font-size:27px}.credential-rail>a>strong{font-size:18px}.contact-big{font-size:28px}.service-scenes{font-size:10px}.article-card-meta{font-size:11px;gap:10px}}
@media(prefers-reduced-motion:reduce){.button,.article-toc a{transition:none}.button:hover,.service-card:hover,.article-card:hover{transform:none}}

.company-name-heading{text-wrap:initial}.company-name-heading span{display:inline-block}
@media(max-width:639px){.company-name-heading span{display:block}.company-name-heading{font-size:25px;line-height:1.65}}

/* The root scroll-padding already reserves the sticky header. */
.article>section,.certificate-section,.standard-list>section{scroll-margin-top:12px}

/* Keep progressive search navigation separate from the article grid. */
.search-more-wrap:has(button:not([hidden])){display:flex;justify-content:center;margin:28px 0 12px}.search-more-wrap button{min-height:48px;cursor:pointer}.search-more-wrap button:focus-visible{outline:3px solid var(--gold,#a28d5b);outline-offset:4px}

/* 2026-10-10 · Qualisafe: an architectural editorial system. */
:root {
  --paper: #faf9f5;
  --ivory: #f0f1eb;
  --ink: #304b50;
  --navy: #163f46;
  --deep: #12353c;
  --gold: #80633d;
  --champagne: #ead6b3;
  --muted: #586d70;
  --line: #d9e0d9;
  --soft: #edf2ed;
}
body { background: var(--paper); }
.wrap { max-width: 1360px; padding-inline: 56px; }
.section { padding-block: 96px; }
h1, h2 { font-family: var(--serif); font-weight: 500; letter-spacing: -.025em; }
h2 { line-height: 1.5; }
.eyebrow { font-size: 11px; letter-spacing: .15em; }
.button { border-radius: 5px; min-height: 52px; padding: 13px 24px; font-size: 14px; }
.button:hover { transform: translateY(-1px); box-shadow: none; }
.text-link { min-height: 44px; }
.site-header { height: 86px; padding-inline: max(32px, calc((100vw - 1248px) / 2)); gap: 24px; background: #faf9f5f5; }
.brand { gap: 12px; }
.brand strong { font-size: 22px; letter-spacing: .12em; }
.brand-mark { width: 41px; height: 44px; }
.brand small { letter-spacing: .17em; }
.site-header #nav { gap: 25px; }
#nav a { font-size: 13px; }
#nav a:after { bottom: 22px; background: var(--navy); }
.header-phone { padding-left: 24px; font-size: 18px; }
.header-phone small { font-size: 10px; }

/* A light reading surface paired with the existing technical drawing. */
.hero-stage { background: var(--paper); color: var(--ink); overflow: hidden; }
.hero-stage:before { background: none; }
.hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; min-height: 660px; padding-block: 66px 62px; }
.hero-copy { padding: 0; }
.hero .eyebrow { color: var(--gold); margin-bottom: 28px; font-size: 11px; letter-spacing: .13em; }
.status-dot { background: var(--gold); box-shadow: 0 0 0 5px #80633d0c; }
.hero h1 { color: var(--navy); font-size: clamp(42px, 4.8vw, 66px); line-height: 1.32; font-family: var(--serif); letter-spacing: -.045em; text-wrap: initial; }
.hero h1 em { color: #466d68; }
.hero-subtitle { color: var(--navy); font-size: 13px; letter-spacing: .04em; margin-block: 26px 20px; }
.hero-subtitle span + span:before { color: #b6bdb0; margin-inline: 13px; }
.hero .lede { color: var(--muted); font-size: 15px; max-width: 430px; line-height: 2; }
.hero .actions { gap: 24px; margin-top: 30px; }
.hero .button { color: #fff; background: var(--navy); border-color: var(--navy); }
.hero .button:hover { background: #28545a; box-shadow: none; }
.hero .text-link { color: var(--navy); border-color: #91a49b; }
.hero .quiet-link { margin-top: 12px; color: var(--muted); font-size: 12px; }
.hero .quiet-link:hover { color: var(--gold); }
.hero-visual { padding: 30px; align-self: stretch; display: flex; flex-direction: column; justify-content: center; background: var(--deep); border: 0; border-radius: 3px 3px 70px 3px; box-shadow: none; isolation: isolate; }
.hero-visual:before { content: ''; position: absolute; z-index: -1; inset: 0; border-radius: inherit; background-image: linear-gradient(#dbe6d908 1px, transparent 1px), linear-gradient(90deg, #dbe6d908 1px, transparent 1px); background-size: 36px 36px; }
.hero-visual:after { content: ''; position: absolute; top: 0; left: 30px; width: 48px; height: 3px; background: var(--champagne); }
.drawing-label { color: #b7c9c8; font-size: 9px; letter-spacing: .09em; border-top: 0; padding: 0 0 24px; }
.hero-visual svg { flex: 0 1 auto; width: 100%; }
.drawing-note { color: #c0d0cd; font-size: 10px; margin-top: 14px; padding-top: 18px; line-height: 1.8; }
.drawing-note span { display: block; color: var(--champagne); margin-bottom: 4px; }
.hero-bottom { background: #f0f2eb; border-block: 1px solid var(--line); }
.fact-strip { grid-template-columns: .85fr 1.3fr .85fr; gap: 32px; padding-block: 25px; }
.fact-strip > div { border-color: #cdd7cd; gap: 15px; }
.fact-icon { width: 30px; height: 30px; color: #6e8071; }
.fact-strip > div > div > span { color: var(--muted); font-size: 11px; }
.fact-strip strong, .fact-strip a { color: var(--navy); font-size: 13px; font-weight: 500; }
.fact-strip a:hover { color: var(--gold); }
.credential-rail { padding-block: 30px; gap: 32px; border-bottom: 1px solid var(--line); }
.credential-rail > div > strong { font-family: var(--serif); font-size: 22px; }
.credential-rail > a { min-height: 60px; border-color: var(--line); }
.credential-rail > a > strong { font-size: 17px; font-weight: 500; }
.credential-rail > p { color: var(--muted); font-size: 12px; }

/* Six service directions, with equal rhythm and a deliberate reading order. */
.section-head { margin-bottom: 38px; gap: 30px; }
.section-head h2 { font-size: 36px; }
.section-head p:not(.eyebrow) { font-size: 15px; }
.service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #aabcb0; border-left: 1px solid var(--line); }
.service-card { display: flex; flex-direction: column; min-width: 0; padding: 32px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; transition: background .2s; }
.service-card:before { display: none; }
.service-card:hover { background: #edf2eb; transform: none; box-shadow: none; }
.card-top { margin-bottom: 25px; }
.service-icon { width: 38px; height: 38px; color: #567d71; }
.number { font-size: 23px; color: #8a9d8c; }
.service-card .eyebrow { font-size: 9px; letter-spacing: .07em; }
.service-card h3 { font-size: 21px; line-height: 1.6; margin-bottom: 12px; }
.service-card > p:not(.eyebrow) { min-height: 0; font-size: 14px; line-height: 1.9; }
.service-scenes { margin-top: 18px; padding-bottom: 22px; font-size: 11px; }
.service-card .card-link { margin-top: auto; border-color: var(--line); padding-top: 17px; font-size: 12px; }
.service-card .card-link > span { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #c2d0c3; border-radius: 50%; color: var(--navy); }
.company-story { background: #edf1ea; }
.story-grid { grid-template-columns: 1fr 1.15fr; gap: 90px; }
.story-heading h2 { font-size: 40px; line-height: 1.5; }
.story-detail { border-left: 1px solid #c8d5c9; padding-left: 44px; }
.story-detail strong { font-size: 19px; }
.story-detail > p { font-size: 16px; line-height: 2; }
.story-principles { gap: 12px 22px; font-size: 12px; }
.process { gap: 0; border-top: 1px solid #b8c6b9; }
.process li { padding: 28px 26px 4px 0; border-top: 0; }
.process li + li { padding-left: 26px; border-left: 1px solid var(--line); }
.process span { font: 34px/1.2 var(--serif); color: #76917c; }
.process h3 { font-size: 18px; margin-top: 16px; }
.process p { font-size: 14px; line-height: 1.95; }
.journal-section { background: #f0f1eb; }
.journal-grid { grid-template-columns: .8fr 1.6fr; gap: 72px; }
.journal-grid .article-grid { grid-template-columns: 1fr; gap: 0; border-top: 1px solid #aabcb0; }
.journal-grid .article-card { background: transparent; border: 0; border-bottom: 1px solid #cbd6cb; border-radius: 0; padding: 28px 0; box-shadow: none; }
.journal-grid .article-card:hover { transform: none; }
.journal-grid .article-card h3 { font-size: 23px; margin-bottom: 10px; }
.journal-grid .article-card p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 14px; }
.journal-grid .article-card-meta { margin-bottom: 12px; }
.journal-grid .article-card .card-link { padding-top: 14px; }
.faq-list summary { min-height: 64px; font-size: 16px; }
.consult-band { padding-block: 80px; background: var(--deep); }
.consult-band h2 { font-size: 38px; }
.consult-band .wrap { gap: 72px; }
.site-footer { padding-top: 54px; }

/* Carry the same scale into service, article and contact pages. */
.page-intro { background: #eef1e9; padding-block: 30px 58px; }
.page-intro h1 { font-size: 44px; }
.page-intro .lede { max-width: 760px; font-size: 16px; }
.article-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 22px; }
.article-card { padding: 28px; border-radius: 5px; }
.article-card p { font-size: 14px; }
.article-card h3 { font-size: 21px; font-weight: 600; }
.article-layout { grid-template-columns: minmax(0, 1fr) 220px; gap: 48px; }
.article { border-radius: 5px; padding: 48px; }
.article h1 { font-family: var(--sans); font-size: 36px; line-height: 1.55; letter-spacing: -.02em; font-weight: 600; }
.article > section h2 { font-family: var(--sans); font-size: 25px; font-weight: 600; letter-spacing: 0; }
.article > section p { line-height: 2.05; font-size: 16px; }
.takeaway { background: #eff3e9; border-left: 3px solid #7c9274; }
.category-links a { min-height: 44px; display: inline-flex; align-items: center; border-radius: 4px; }
.search-controls { background: #f0f2eb; border-radius: 5px; padding: 26px; }
.search-field input { min-height: 50px; }
.preparation, #consultation-helper, .contact-address { border-radius: 5px; }
.contact-big { font-size: clamp(25px, 2.5vw, 36px); }
.certificate-card { border-radius: 5px; }
.certificate-preview { background: #e8eee5; }

@media (max-width: 1199px) {
  .wrap { padding-inline: 40px; }
  .site-header { padding-inline: 40px; }
  .hero { gap: 36px; min-height: 590px; padding-block: 54px; }
  .hero h1 { font-size: 50px; }
  .hero-visual { padding: 25px; }
  .service-card { padding: 27px; }
  .story-grid, .journal-grid { gap: 48px; }
  .article { padding: 36px; }
}
@media (max-width: 979px) {
  .wrap { padding-inline: 30px; }
  .section { padding-block: 70px; }
  .site-header { height: 76px; padding-inline: 30px; }
  .js #nav { top: 76px; gap: 8px 18px; background: var(--paper); }
  .hero { gap: 28px; min-height: 0; padding-block: 44px; }
  .hero h1 { font-size: 41px; }
  .hero .eyebrow { font-size: 9px; }
  .hero .lede { font-size: 14px; }
  .hero .actions { gap: 18px; }
  .hero-visual { padding: 20px; border-bottom-right-radius: 45px; }
  .drawing-label { flex-direction: column; gap: 5px; padding-bottom: 12px; }
  .fact-strip { gap: 20px; }
  .fact-strip > div { gap: 10px; padding-right: 12px; }
  .fact-strip strong, .fact-strip a { font-size: 12px; }
  .credential-rail { gap: 22px; }
  .credential-rail > a > strong { font-size: 16px; }
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .story-grid { gap: 36px; }
  .story-heading h2 { font-size: 33px; }
  .story-detail { padding-left: 28px; }
  .process { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .process li, .process li + li { padding: 24px 0 0; border-left: 0; }
  .process li:nth-child(n+3) { border-top: 1px solid var(--line); }
  .journal-grid { grid-template-columns: 1fr; gap: 0; }
  .journal-grid .section-head { display: flex; align-items: flex-end; }
  .journal-grid .section-head h2 br { display: none; }
  .article-layout { display: block; }
  .consult-band .wrap { gap: 36px; }
}
@media (max-width: 639px) {
  .wrap { padding-inline: 22px; }
  .section { padding-block: 52px; }
  .site-header { height: 72px; padding-inline: 22px; gap: 16px; }
  .brand-mark { width: 33px; height: 37px; }
  .brand strong { font-size: 20px; }
  .js #nav { top: 72px; padding-inline: 22px; }
  .menu { min-width: 72px; min-height: 44px; }
  .hero { grid-template-columns: minmax(0, 1fr); gap: 30px; padding-block: 38px 28px; }
  .hero .eyebrow { margin-bottom: 23px; font-size: 9px; }
  .hero h1 { font-size: clamp(37px, 10.8vw, 53px); line-height: 1.35; letter-spacing: -.04em; }
  .hero-subtitle { font-size: 12px; margin-block: 23px 18px; }
  .hero-subtitle span + span:before { margin-inline: 10px; }
  .hero .lede { font-size: 14px; line-height: 1.95; }
  .hero .actions { margin-top: 24px; gap: 22px; }
  .hero .button { min-height: 50px; }
  .hero-visual { max-width: none; padding: 23px; border-bottom-right-radius: 42px; }
  .drawing-label { flex-direction: row; font-size: 8px; gap: 10px; padding-bottom: 12px; }
  .hero-visual svg { max-height: 235px; }
  .drawing-note { font-size: 9px; margin-top: 8px; padding-top: 12px; }
  .drawing-note span { display: inline; margin-right: 7px; font-size: 8px; }
  .fact-strip { grid-template-columns: 1fr; gap: 0; padding-block: 5px; }
  .fact-strip > div { padding-block: 13px; border-color: #d3ddd1; }
  .fact-strip > div > div { gap: 12px; flex: 1; }
  .fact-strip strong, .fact-strip a { font-size: 12px; }
  .fact-strip > div > div > span { font-size: 10px; }
  .fact-icon { width: 23px; height: 23px; }
  .credential-rail { grid-template-columns: 1fr; gap: 14px; padding-block: 25px; }
  .credential-rail > div { grid-column: auto; }
  .credential-rail > div > strong { font-size: 22px; }
  .credential-rail > a { border-top: 1px solid var(--line); min-height: 74px; padding-top: 14px; }
  .credential-rail > a > strong { font-size: 18px; }
  .credential-rail > p { font-size: 12px; }
  .credential-rail > p br { display: none; }
  .section-head { gap: 16px; margin-bottom: 28px; }
  .section-head h2 { font-size: 29px; }
  .section-head p:not(.eyebrow) { font-size: 14px; }
  .service-grid { grid-template-columns: minmax(0, 1fr); }
  .service-card { padding: 26px; }
  .card-top { margin-bottom: 19px; }
  .service-card h3 { font-size: 22px; }
  .service-card > p:not(.eyebrow) { font-size: 14px; }
  .service-scenes { font-size: 11px; padding-bottom: 20px; }
  .story-grid { grid-template-columns: 1fr; gap: 28px; }
  .story-heading h2 { font-size: 32px; }
  .story-detail { padding: 25px 0 0; border-left: 0; border-top: 1px solid #c8d5c9; }
  .story-detail > p { font-size: 15px; }
  .process { grid-template-columns: 1fr; gap: 0; }
  .process li, .process li + li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 5px 18px; padding-block: 22px; border-top: 1px solid var(--line); border-left: 0; }
  .process li:first-child { border-top: 0; }
  .process span { grid-row: 1 / 3; font-size: 28px; margin: 0; }
  .process h3 { margin: 0; font-size: 18px; }
  .process p { font-size: 14px; }
  .journal-grid .section-head { display: block; }
  .journal-grid .section-head .text-link { margin-top: 17px; }
  .journal-grid .article-card { padding-block: 24px; }
  .journal-grid .article-card h3 { font-size: 21px; }
  .faq-list summary { min-height: 64px; font-size: 15px; }
  .consult-band { padding-block: 50px; }
  .consult-band h2 { font-size: 30px; }
  .consult-band .wrap { gap: 24px; }
  .page-intro { padding-block: 24px 35px; }
  .page-intro h1 { font-size: 32px; }
  .page-intro .lede { font-size: 14px; }
  .article { padding: 0; border-radius: 0; }
  .article h1 { font-size: 28px; line-height: 1.65; }
  .article > section h2 { font-size: 23px; line-height: 1.55; }
  .article > section p { line-height: 2; }
  .article-card { padding: 24px; }
  .search-controls { padding: 20px; }
  .contact-big { font-size: 28px; }
  .mobile-contact { background: #faf9f5fa; border-top: 1px solid #cbd6cd; backdrop-filter: blur(12px); }
  .mobile-contact a { min-height: 46px; border-radius: 4px; }
}
@media (max-width: 359px) {
  .wrap, .site-header { padding-inline: 18px; }
  .brand strong { font-size: 18px; }
  .hero h1 { font-size: 36px; }
  .hero .actions { gap: 17px; }
  .fact-strip strong { font-size: 11px; }
  .section-head h2 { font-size: 27px; }
  .service-card { padding: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-copy, .hero-visual { animation: none; }
  .service-card, .button { transition: none; }
}

/* Complete interface refinement — 2026-10-10. Shared interaction and editorial rhythm. */
:root { --radius: 8px; --focus: #976429; --shadow: 0 16px 44px #173d4610; --surface: #fffefa; }
html { scroll-padding-top: 112px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { color: #fff; background: #315d59; }
:where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
:where(button,a,input,select,textarea,summary) { -webkit-tap-highlight-color: #315d5918; }
button,summary,select { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .58; }
button[aria-busy="true"] { cursor: wait; }
[hidden] { display: none !important; }
.consult-band :focus-visible,.contact-primary :focus-visible { outline-color: #ead6b3; }
a { text-underline-offset: .25em; }
.button { border-radius: var(--radius); font-weight: 600; letter-spacing: .025em; transition: background .2s, border-color .2s, box-shadow .2s, transform .2s; }
.button:active { transform: translateY(1px); box-shadow: none; }
.button.secondary { background: var(--surface); border: 1px solid #9eb2a9; color: var(--navy); }
.button.secondary:hover { background: #e7eee6; border-color: var(--navy); }
.button > span,.card-link > span { transition: transform .2s; }
.button:hover > span,.service-card:hover .card-link > span { transform: translate(2px,-2px); }
.text-link { text-decoration-thickness: 1px; transition: color .2s,border-color .2s; }
.text-link:hover { color: #735329; }
.site-header { border-bottom: 1px solid #d8e0d8; box-shadow: 0 4px 22px #173d4605; backdrop-filter: blur(16px); }
.brand-mark { border-radius: 4px 4px 12px 4px; }
#nav a { font-weight: 500; }
#nav a[aria-current="page"] { color: var(--navy); font-weight: 700; }
.menu { border: 1px solid #b8c9bf; border-radius: 6px; background: var(--surface); padding: 10px 14px; color: var(--navy); }
.menu[aria-expanded="true"] { background: var(--navy); color: #fff; border-color: var(--navy); }
.hero-stage { background: radial-gradient(ellipse at 8% 7%,#e4ece166,transparent 60%),var(--paper); }
.hero-copy { position: relative; }
.hero-visual { box-shadow: 0 24px 48px #173d4619; }
.hero .quiet-link { display: inline-flex; align-items: center; min-height: 44px; gap: 12px; }
.hero .button { box-shadow: 0 6px 18px #163f461c; }
.hero .button:hover { box-shadow: 0 10px 24px #163f4624; }
.service-grid { border: 0; gap: 16px; }
.service-card { position: relative; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 32px; transition: border-color .2s,background .2s,box-shadow .2s,transform .2s; }
.service-card:hover { background: #fffefa; border-color: #8aa79b; box-shadow: var(--shadow); transform: translateY(-3px); }
.service-card:first-child { background: #e9efe6; border-color: #c3d2c1; }
.card-top { align-items: center; }
.service-icon { box-sizing: content-box; width: 34px; height: 34px; padding: 12px; border: 1px solid #d4dfd1; border-radius: 7px; background: #f2f5ee; }
.service-card:first-child .service-icon { background: #dbe6d7; }
.service-card .number { font-family: var(--serif); font-size: 32px; color: #8c9e8f; }
.service-card h3 { font-size: 22px; font-weight: 600; }
.service-scenes span { padding: 4px 8px; border-radius: 3px; background: #f0f3ed; color: #556a5f; }
.service-card .card-link { margin-top: auto; min-height: 48px; }
.service-card .card-link > span { border-color: #9db4a5; }
.company-story { background: linear-gradient(110deg,#e9eee4,#f3f4ed); }
.story-principles span { padding-block: 10px; border-top: 1px solid #bbcdbd; }
.process span { font-variant-numeric: tabular-nums; }
.process h3 { font-weight: 600; }
.consult-band { position: relative; overflow: hidden; background-color: #12353c; background-image: linear-gradient(#e4eadd05 1px,transparent 1px),linear-gradient(90deg,#e4eadd05 1px,transparent 1px); background-size: 48px 48px; border-top: 3px solid #c7b083; }
.consult-band .button { background: #e9d6b0; color: #183c40; border-color: #e9d6b0; }
.consult-band .button:hover { background: #f4e7cc; border-color: #f4e7cc; }
.consult-band .text-link { color: #f1e6d2; border-color: #91a99e; }
.consult-band .text-link:hover { color: #fff; }
.page-intro { position: relative; overflow: hidden; background: linear-gradient(110deg,#eff2ea 60%,#e5ede3); border-bottom: 1px solid #d5e0d3; padding-bottom: 64px; }
.page-intro:before { content: ''; position: absolute; pointer-events: none; inset: 0 0 0 60%; background-image: linear-gradient(#52796308 1px,transparent 1px),linear-gradient(90deg,#52796308 1px,transparent 1px); background-size: 40px 40px; mask-image: linear-gradient(90deg,transparent,#000); }
.page-intro .wrap { position: relative; }
.intro-copy { border-left: 2px solid #9dad88; padding-left: 28px; }
.page-intro { color: #304b42; }
.page-intro h1 { color: #173f3b; font-size: clamp(32px,3.4vw,48px); line-height: 1.48; max-width: 21em; }
.page-intro .lede { color: #496353; }
.page-intro .breadcrumbs a,.page-intro .breadcrumbs [aria-current] { color: #536b5d; }
.page-intro .intro-signature { color: #8aa28b; border-color: #c6d5c0; }
.page-intro .intro-signature small { color: #5b775d; }
.page-intro .eyebrow { color: #76603e; margin-bottom: 16px; }
.intro-signature { opacity: .55; }
.breadcrumbs { gap: 8px 12px; color: #687e70; font-size: 12px; line-height: 1.8; padding-block: 6px; margin-bottom: 32px; }
.breadcrumbs a { display: inline-flex; align-items: center; min-height: 36px; color: #4d685e; }
.breadcrumbs a:hover { text-decoration: underline; }
.breadcrumbs [aria-current] { color: #3b574c; }
.about-grid { gap: 72px; align-items: start; }
.about-grid > div > p { font-size: 16px; line-height: 2.05; }
.english-name { color: #718475; font-size: 11px !important; letter-spacing: .09em; }
.company-facts { background: var(--surface); border: 1px solid #d3dfd0; border-top: 3px solid #9caa80; border-radius: var(--radius); padding: 16px 28px; box-shadow: var(--shadow); }
.company-facts > div { padding-block: 20px; border-color: #e1e6db; }
.company-facts dt { color: #657665; font-size: 12px; margin-bottom: 8px; }
.company-facts dd { font-size: 15px; line-height: 1.8; margin: 0; }
.company-facts a { display: inline-flex; min-height: 44px; align-items: center; }
.certificate-section { background: #edf1e8; }
.certificate-grid { gap: 24px; }
.certificate-card { background: var(--surface); border-color: #d3ddcc; border-radius: var(--radius); box-shadow: 0 5px 24px #173d4607; }
.certificate-preview { background: #e5ebe0; padding: 30px 30px 48px; }
.certificate-preview > span { display: inline-flex; min-height: 36px; align-items: center; gap: 12px; right: 20px; bottom: 6px; }
.certificate-copy { padding: 30px; }
.certificate-copy h3 { font-size: 24px; }
.certificate-number { overflow-wrap: anywhere; }
.certificate-links { margin-top: 24px; border-top: 1px solid var(--line); padding-top: 8px; }
.certificate-links .text-link { width: 100%; justify-content: space-between; padding-block: 10px; }
.certificate-format { color: #796242; font-size: 11px; letter-spacing: .06em; }
.trust-grid { gap: 22px; }
.trust-grid > article { border: 1px solid #d1ddce; border-radius: var(--radius); background: var(--surface); padding: 30px; }
.trust-grid h3 { font-size: 21px; }
.trust-grid p { font-size: 14px; line-height: 2; }
.company-scene-links { margin-top: 20px; padding-top: 12px; border-top: 1px solid var(--line); }
.company-scene-links a { display: inline-flex; align-items: center; min-height: 44px; }
.service-detail { grid-template-columns: minmax(0,1.25fr) minmax(0,.8fr); gap: 64px; align-items: start; }
.service-detail > div > h2 { font-size: 30px; line-height: 1.6; }
.service-detail > div > h3 { font-size: 18px; margin-top: 32px; }
.service-detail > div > p { font-size: 16px; line-height: 2; }
.parameter-list { gap: 0; border-top: 1px solid #c7d6c5; }
.parameter-list li { padding: 15px 0; border-bottom: 1px solid #dde5d8; font-size: 15px; line-height: 1.85; }
.chips { gap: 8px; }
.chips span { background: #edf2e9; color: #3e5f4e; border: 1px solid #d4dfcf; border-radius: 4px; padding: 7px 12px; }
.scope-note { background: #f0f3eb; border-left: 3px solid #9dad88; border-radius: 0 5px 5px 0; padding: 18px 22px; color: #566b59; font-size: 13px; line-height: 1.95; }
.preparation { background: var(--surface); border: 1px solid #c9d8c6; border-top: 3px solid #819675; border-radius: var(--radius); box-shadow: var(--shadow); padding: 30px; }
.preparation h2 { font-size: 23px; }
.preparation ol { padding-left: 24px; }
.preparation li { padding: 12px 0 12px 5px; border-bottom: 1px solid #e0e7db; line-height: 1.9; font-size: 14px; }
.preparation li::marker { color: #8b7149; font-variant-numeric: tabular-nums; }
.preparation .actions { gap: 12px; flex-wrap: wrap; }
.preparation .button { padding-inline: 18px; }
.reading-path { border-top: 1px solid #dce4d5; }
.answer-list { counter-reset: answer; gap: 20px; }
.answer-list > article,.answer-list > section { counter-increment: answer; position: relative; padding: 28px 30px 28px 80px; background: var(--surface); border: 1px solid #dce4d6; border-radius: var(--radius); }
.answer-list > article:before,.answer-list > section:before { content: counter(answer,decimal-leading-zero); position: absolute; top: 32px; left: 26px; color: #87987a; font: 23px/1.4 var(--serif); }
.answer-list h2,.answer-list h3 { font-family: var(--sans); font-size: 21px; line-height: 1.7; }
.answer-list p { font-size: 15px; line-height: 2; color: #536855; }
[data-route="/company/editorial/"] .answer-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
[data-service-library] .parameter-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 32px; }
[data-service-library] .text-link { align-items: flex-start; line-height: 1.9; font-size: 14px; }
.knowledge-section { padding-top: 36px; }
.knowledge-section .article-grid,#article-results:not(:empty) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.category-links { gap: 9px; padding-bottom: 20px; border-bottom: 1px solid #d9e2d4; }
.category-links a { padding: 10px 15px; border: 1px solid #d0dccb; background: var(--surface); border-radius: 5px; font-size: 13px; transition: background .2s,color .2s,border-color .2s; }
.category-links a[aria-current="page"] { color: #fff; background: #244c40; border-color: #244c40; }
.category-links a:hover:not([aria-current="page"]) { background: #e6eddf; border-color: #9faf91; }
.knowledge-tools { gap: 12px; }
.knowledge-tools a { min-height: 46px; display: inline-flex; align-items: center; gap: 20px; padding: 8px 14px; border: 1px solid #d7dfcf; background: #f4f5ef; border-radius: 5px; font-size: 13px; }
.knowledge-tools a:hover { background: #e9efdf; border-color: #a6b78e; }
.search-controls { position: relative; background: #eaf0e4; border: 1px solid #cbdac2; padding: 26px 30px; border-radius: var(--radius); }
.search-controls > label { font-size: 15px; font-weight: 600; }
.search-field { gap: 10px; margin-top: 12px; }
.search-field input { min-width: 0; background: #fffefa; border: 1px solid #aebfa3; border-radius: 6px; padding-inline: 16px; font-size: 16px; min-height: 52px; }
.search-field input:focus { border-color: #5e8053; box-shadow: 0 0 0 3px #69855715; }
.search-field button,[data-retry-search] { min-height: 48px; padding: 10px 18px; border: 1px solid #aebfa3; border-radius: 6px; background: #fffefa; color: #31522e; font-size: 13px; }
.search-field button:hover,[data-retry-search]:hover { background: #dfe9d5; border-color: #7f9c6d; }
#search-status { min-height: 24px; font-size: 13px; color: #4f6743; line-height: 1.85; margin-bottom: 0; }
.search-controls[aria-busy="true"] { border-color: #778d60; }
.search-controls[aria-busy="true"] #search-status:before { content: ''; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #6c8759; margin-right: 9px; }
.article-card { background: var(--surface); border: 1px solid #d9e2d3; border-radius: var(--radius); box-shadow: none; transition: background .2s,border-color .2s,transform .2s; }
.article-card:hover { border-color: #94ae87; background: #fffefb; transform: translateY(-2px); }
.article-card-meta { gap: 10px; align-items: center; color: #697d5f; font-size: 12px; flex-wrap: wrap; }
.article-card-meta > span { padding: 4px 9px; background: #edf2e5; border-radius: 3px; color: #48613c; }
.article-card-meta time { font-variant-numeric: tabular-nums; }
.article-card h3 { font-weight: 600; font-size: 20px; line-height: 1.7; }
.article-card p { color: #627357; line-height: 1.95; }
.article-card .card-link { color: #45643e; min-height: 44px; }
.pagination { gap: 8px; flex-wrap: wrap; }
.pagination a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 9px 14px; border: 1px solid #cbd9c1; border-radius: 5px; background: var(--surface); }
.pagination a[aria-current] { background: #264b3b; border-color: #264b3b; color: #fff; }
.pagination a:hover:not([aria-current]) { background: #e6eeda; border-color: #a7bb94; }
.search-empty { grid-column: 1/-1; text-align: center; padding: 52px 24px; border: 1px dashed #b0c39e; border-radius: var(--radius); background: #f3f5ed; }
.search-empty strong { display: block; color: #3b5930; font-size: 21px; margin-bottom: 12px; }
.search-empty p { font-size: 14px; color: #69785d; }
.topic-grid { gap: 20px; }
.topic-grid > article { padding: 28px; background: var(--surface); border: 1px solid #d3dfc9; border-radius: var(--radius); }
.topic-grid h3 { font-size: 22px; line-height: 1.65; }
.topic-grid ul { border-top: 1px solid #e0e8d7; padding-top: 12px; }
.topic-grid li a { display: inline-flex; align-items: center; min-height: 44px; padding-block: 8px; line-height: 1.8; }
.standard-jump { gap: 8px; padding: 24px; border: 1px solid #d2deca; border-radius: var(--radius); background: #f0f4e9; }
.standard-jump a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid #c6d6b8; border-radius: 4px; background: var(--surface); font-size: 12px; font-variant-numeric: tabular-nums; }
.standard-list > section { padding: 36px 0; gap: 48px; border-color: #d0dec5; scroll-margin-top: 112px; }
.standard-list h2 { font-size: 25px; line-height: 1.65; }
.standard-list h3 { font-size: 14px; color: #687d57; }
.standard-list li { padding-block: 5px; }
.standard-list a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; line-height: 1.8; }
.standard-sources { padding: 16px 20px; border-radius: 5px; background: #edf3e3; }
.article-wrap { padding-top: 26px; }
.article-layout { grid-template-columns: minmax(0,1fr) 234px; gap: 42px; }
.article { background: #fffefa; border: 1px solid #e0e4d7; border-radius: var(--radius); padding: 48px; box-shadow: 0 12px 44px #33452505; }
.article-header { border-bottom: 1px solid #dce2cf; padding-bottom: 28px; margin-bottom: 28px; }
.article-header h1 { font-size: 35px; line-height: 1.65; }
.article-header .lede { color: #637151; font-size: 16px; line-height: 2; }
.article-meta { font-size: 12px; color: #738060; line-height: 1.9; gap: 7px 15px; }
.reading-actions { min-height: 44px; gap: 12px; margin-top: 20px; }
.reading-actions button { min-height: 44px; border: 1px solid #bacaa4; border-radius: 5px; background: #f2f5e9; color: #486334; padding: 9px 14px; }
.reading-actions button:hover { background: #e4edcf; }
[data-link-status] { font-size: 12px; color: #657b47; }
.link-fallback input { font-size: 14px; min-height: 44px; border: 1px solid #acbf91; border-radius: 4px; }
.takeaway { padding: 25px 28px; background: #ecf1e1; border-left: 3px solid #849d60; border-radius: 0 6px 6px 0; }
.takeaway > strong { display: block; font-size: 13px; color: #576c3c; letter-spacing: .08em; margin-bottom: 10px; }
.takeaway p { color: #354d2a; font-size: 16px; line-height: 2; }
.article > section { margin-top: 42px; scroll-margin-top: 112px; }
.article > section h2 { border-bottom: 1px solid #dfe5d4; padding-bottom: 14px; margin-bottom: 20px; font-size: 24px; line-height: 1.65; }
.article > section p { font-size: 17px; line-height: 2; color: #40503a; margin-bottom: 19px; }
.article > section p strong { color: #253d20; font-weight: 600; }
.article > section p a { text-decoration: underline; text-decoration-color: #acbc98; }
.checklist { padding: 20px 26px; border-radius: 6px; background: #f2f5e9; }
.checklist li { padding-block: 12px; border-bottom: 1px solid #dfe6d2; font-size: 15px; line-height: 1.9; }
.checklist li:last-child { border-bottom: 0; }
.sources { border-top: 0; }
.sources a { display: inline-flex; min-height: 44px; align-items: center; font-size: 13px; overflow-wrap: anywhere; }
.article-company { background: #f4f6ed; border: 1px solid #d6e1c8; border-radius: 6px; padding: 28px; }
.article-company h2 { font-size: 22px !important; }
.article-company p { font-size: 14px !important; }
.company-service-links a { display: inline-flex; align-items: center; min-height: 44px; }
.article-cta { border: 1px solid #c7d6b4; border-radius: 6px; background: #eaf0de; padding: 30px; }
.article-cta h2 { font-size: 26px; }
.article-cta p { color: #536844; font-size: 15px; line-height: 1.95; }
.article-sidebar .article-toc { border: 1px solid #d5dfc9; background: #f2f5eb; border-radius: var(--radius); padding: 23px 18px; }
.article-toc > strong { display: block; font-size: 13px; color: #5d744b; padding: 0 10px 15px; border-bottom: 1px solid #d4dfc6; }
.article-toc ol { padding-left: 0; list-style: none; margin-top: 10px; }
.article-toc li { margin: 0; }
.article-toc a { display: flex; align-items: center; min-height: 44px; padding: 10px; font-size: 13px; line-height: 1.7; border-radius: 4px; border-left: 2px solid transparent; }
.article-toc a:hover { background: #e5edda; }
.article-toc a[aria-current="location"] { color: #2d5020; border-left-color: #839f5d; background: #e1eacd; font-weight: 600; }
.sidebar-contact { border: 1px solid #d1dfc0; border-radius: 6px; background: #eaf1dd; padding: 24px 20px; }
.sidebar-contact strong { font-size: 17px; line-height: 1.7; }
.sidebar-contact a { min-height: 44px; display: flex; align-items: center; font-size: 13px; }
.mobile-toc { border: 1px solid #d0ddbf; background: #f1f5e7; border-radius: 6px; }
.mobile-toc summary { min-height: 52px; padding: 14px 18px; align-items: center; }
.mobile-toc[open] summary { border-bottom: 1px solid #d9e2cc; }
.contact-options { margin-top: 36px; }
.contact-primary { background: #173f3d; background-image: linear-gradient(125deg,#315b4b,#173f3d 65%); border: 0; border-radius: var(--radius); padding: 32px 38px; color: #eaf1e3; }
.contact-primary .eyebrow { color: #c9d5b6; }
.contact-big { color: #fff9e9; display: inline-flex; align-items: center; min-height: 54px; font-size: clamp(29px,3.2vw,42px); font-variant-numeric: tabular-nums; letter-spacing: .035em; }
.contact-primary p,.contact-primary .quiet-link { color: #cbdac5; font-size: 13px; line-height: 1.9; }
.contact-primary .quiet-link { display: inline-flex; min-height: 44px; align-items: center; }
.consultation-layout { gap: 40px; align-items: start; padding-top: 42px; }
#consultation-helper { background: var(--surface); border: 1px solid #d6e0cd; box-shadow: var(--shadow); border-radius: var(--radius); padding: 36px; }
#consultation-helper h2 { font-size: 29px; }
#consultation-helper > p { font-size: 14px; color: #69795c; line-height: 1.9; }
.form-grid { gap: 23px; margin-top: 28px; }
.form-grid label,.copy-label { font-size: 13px; font-weight: 600; color: #47603b; }
.form-grid :is(input,select,textarea),#consultation-text { border: 1px solid #b8c9a7; background: #fffefa; color: #344a2a; border-radius: 5px; min-height: 50px; padding: 13px 14px; font-size: 16px; line-height: 1.7; transition: border-color .2s,box-shadow .2s; }
.form-grid :is(input,select,textarea):focus { border-color: #738f53; box-shadow: 0 0 0 3px #738f5314; }
.form-grid ::placeholder { color: #7a896c; font-size: 14px; }
#consultation-text { background: #f0f4e7; margin-top: 10px; font-size: 14px; line-height: 1.95; }
.copy-label { margin-top: 27px; }
#copy-status { min-height: 25px; padding: 12px 0 0; font-size: 13px; color: #657c4c; }
.contact-address { background: #edf2e3; border: 1px solid #d0dfbc; border-radius: var(--radius); padding: 32px; }
.contact-address h2 { font-size: 25px; }
.contact-address h3 { font-size: 12px; color: #78885f; letter-spacing: .1em; margin-top: 27px; }
.contact-address address,.contact-address p { font-style: normal; font-size: 14px; line-height: 1.95; color: #536d40; }
.contact-address a { overflow-wrap: anywhere; display: inline-flex; min-height: 44px; align-items: center; }
.faq-list { border-top: 1px solid #bbcbae; }
.faq-list details { border-bottom: 1px solid #d3dfc5; transition: background .2s; }
.faq-list details[open] { background: #edf2e4; }
.faq-list summary { min-height: 68px; padding: 20px; border-radius: 4px; line-height: 1.8; }
.faq-list summary:hover { background: #f0f4e8; }
.faq-list details > p,.faq-list .faq-answer { padding: 0 20px 24px; color: #546b40; line-height: 2; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.site-footer { background: #f0f2e9; color: #425638; border-top: 1px solid #d4dfc8; }
.footer-top .eyebrow { color: #77603a; }
.footer-top strong,.footer-phone { color: #1e4438; }
.footer-top > div:first-child > p { color: #5b6d4f; }
.footer-bottom { color: #5e7151; }
.footer-links a:hover { color: #715627; }
.footer-top { padding-bottom: 36px; }
.footer-top > div > strong { font-size: 18px; line-height: 1.8; }
.footer-top p { color: #687958; font-size: 12px; line-height: 2; }
.footer-label { color: #5b6d4f; font-size: 12px; }
.footer-phone { font-size: 29px; letter-spacing: .025em; font-variant-numeric: tabular-nums; }
.footer-links a { min-height: 40px; display: flex; align-items: center; font-size: 13px; }
.footer-bottom { border-color: #d1ddc3; gap: 12px 24px; font-size: 11px; }
.footer-bottom a { display: inline-flex; min-height: 44px; align-items: center; }
.back-top-link { gap: 14px; }
.back-top-link span { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #b5c79c; border-radius: 50%; }
@media (hover:none) { .service-card:hover,.article-card:hover { transform: none; } }
@media (max-width:1199px) {
  .service-detail { gap: 32px; }.about-grid { gap: 40px; }
  .article-layout { grid-template-columns: minmax(0,1fr) 210px; gap: 28px; }.article { padding: 32px; }
  .service-card { padding: 26px; }.trust-grid > article { padding: 24px; }
  .consultation-layout { gap: 28px; }#consultation-helper { padding: 28px; }.contact-address { padding: 26px; }
}
@media (max-width:979px) {
  .knowledge-section .article-grid,#article-results:not(:empty) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html { scroll-padding-top: 98px; }.article > section,.standard-list > section { scroll-margin-top: 98px; }
  .js #nav { border-bottom: 1px solid #c7d6ba; box-shadow: 0 18px 30px #1b3d3015; padding-block: 18px; }
  .js #nav a { padding: 12px 16px; min-height: 46px; border-radius: 5px; }
  .js #nav a[aria-current] { background: #e4ecd9; }.js #nav a:after { display: none; }
  .intro-copy { padding-left: 22px; }.page-intro { padding-bottom: 48px; }
  .article-layout { display: block; }.article { padding: 32px; }
  .service-detail { grid-template-columns: 1fr; gap: 30px; }.preparation { position: static; }
  .standard-list > section { gap: 28px; }.article-header h1 { font-size: 31px; }
}
@media (max-width:639px) {
  .knowledge-section .article-grid,#article-results:not(:empty) { grid-template-columns: minmax(0,1fr); }
  [data-route="/company/editorial/"] .answer-list { grid-template-columns: minmax(0,1fr); }
  .hero-visual { box-shadow: 0 14px 28px #173d4612; }.hero .quiet-link { font-size: 12px; }
  .service-grid { gap: 13px; }.service-card { padding: 25px; }.service-icon { width: 29px; height: 29px; padding: 10px; }
  .service-card h3 { font-size: 21px; }.service-card .number { font-size: 30px; }
  .page-intro { padding-bottom: 34px; }.page-intro h1 { font-size: 31px; line-height: 1.55; }.intro-copy { padding-left: 18px; }
  .breadcrumbs { margin-bottom: 20px; gap: 4px 9px; font-size: 11px; }.breadcrumbs [aria-current] { overflow-wrap: anywhere; }
  .about-grid { gap: 28px; }.about-grid > div > p { font-size: 15px; }.company-facts { padding: 10px 22px; }
  .certificate-copy { padding: 24px; }.certificate-copy h3 { font-size: 21px; }.certificate-preview { height: 310px; padding: 24px 24px 48px; }
  .trust-grid > article { padding: 25px; }.scope-note { padding: 16px 18px; font-size: 12px; }
  .service-detail > div > h2 { font-size: 25px; }.service-detail > div > p { font-size: 15px; }.preparation { padding: 25px; }
  .answer-list > article,.answer-list > section { padding: 24px; padding-top: 61px; }
  .answer-list > article:before,.answer-list > section:before { top: 20px; left: 24px; font-size: 22px; }
  .answer-list h2,.answer-list h3 { font-size: 20px; }.answer-list p { font-size: 14px; }
  [data-service-library] .parameter-list { grid-template-columns: minmax(0,1fr); }
  .knowledge-section { padding-top: 25px; }.category-links { gap: 8px; }.category-links a { font-size: 12px; padding-inline: 12px; }
  .knowledge-tools a { width: 100%; justify-content: space-between; font-size: 12px; }.search-controls { padding: 22px 18px; }
  .search-field button { padding-inline: 12px; }.article-card { padding: 24px; }.article-card h3 { font-size: 20px; }
  .topic-grid > article { padding: 25px; }.topic-grid h3 { font-size: 21px; }
  .standard-jump { padding: 16px; }.standard-jump a { font-size: 11px; padding-inline: 9px; }
  .standard-list h2 { font-size: 23px; }.standard-list > section { padding-block: 28px; }.standard-sources { padding: 12px 16px; }
  .article-wrap { padding-top: 20px; }.article { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .article-header { padding-bottom: 24px; }.article-header h1 { font-size: 28px; line-height: 1.65; }.article-header .lede { font-size: 15px; }
  .article-header .eyebrow { font-size: 11px; }.article-meta { font-size: 12px; }.article > section { margin-top: 34px; }
  .article > section h2 { font-size: 23px; }.article > section p { font-size: 16px; }.takeaway { padding: 22px; }.takeaway p { font-size: 15px; }
  .checklist { padding: 14px 20px; }.checklist li { font-size: 14px; }.article-company { padding: 23px; }.article-cta { padding: 24px; }.article-cta h2 { font-size: 25px; }
  .mobile-toc .article-toc { padding: 14px; }.mobile-toc .article-toc > strong { display: none; }.mobile-toc .article-toc ol { margin: 0; }
  .contact-options { margin-top: 25px; }.contact-primary { padding: 27px 24px; }.contact-big { font-size: 30px; }
  .consultation-layout { padding-top: 28px; gap: 24px; }#consultation-helper { padding: 25px 21px; }#consultation-helper h2 { font-size: 25px; }
  .form-grid { gap: 20px; }.contact-address { padding: 26px; }.faq-list summary { padding: 18px 12px; font-size: 15px; }
  .faq-list details > p,.faq-list .faq-answer { padding-inline: 12px; font-size: 14px; }.footer-phone { font-size: 28px; }
  .mobile-contact { gap: 10px; padding: 10px 18px calc(10px + env(safe-area-inset-bottom,0px)); }
  .mobile-contact a:first-child { background: #20483d; color: #fff; border-color: #20483d; }.mobile-contact a { font-size: 13px; border-radius: 6px; min-height: 46px; }
}
@media (max-width:359px) { .intro-copy { padding-left: 14px; }.page-intro h1 { font-size: 28px; }.article-header h1 { font-size: 26px; }.contact-big { font-size: 26px; }.search-field { gap: 7px; }.search-field input { padding-inline: 11px; }.button { padding-inline: 18px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } *,*:before,*:after { animation: none !important; transition: none !important; } }
@media print { .site-header,.site-footer,.mobile-contact,.article-sidebar,.reading-actions,.mobile-toc { display: none !important; }.article-layout { display: block; }.article { box-shadow: none; border: 0; padding: 0; }.article-wrap { max-width: none; padding: 0; }.article { color: #000; background: #fff; } }

/* Finishing pass: keyboard navigation, short screens, and reading actions. */
.skip-link { color: #173f3b; border: 1px solid #91a78e; border-radius: 5px; min-height: 44px; box-shadow: 0 5px 20px #173f3b18; }
.link-fallback input { font-size: 16px; line-height: 1.6; background: #fffefa; padding: 12px 14px; }
.reading-actions button[aria-busy="true"] { background: #e5edda; border-color: #9db38e; color: #405535; cursor: wait; }
.reading-actions button[aria-busy="true"]::before { content: ""; display: inline-block; width: 12px; height: 12px; margin-right: 8px; border: 2px solid #8fa47c; border-right-color: transparent; border-radius: 50%; vertical-align: -1px; animation: copy-link-spin .8s linear infinite; }
.reading-actions button[aria-busy="true"] span { display: none; }
@keyframes copy-link-spin { to { transform: rotate(360deg); } }
@media (max-width: 979px) {
  .js #nav { max-height: calc(100vh - 88px); max-height: calc(100dvh - 88px - env(safe-area-inset-bottom,0px)); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #849d78 #edf3e3; scroll-padding-block: 12px; }
  .js #nav a { flex-shrink: 0; }
}
@media (max-width: 639px) { .js #nav { max-height: calc(100vh - 84px); max-height: calc(100dvh - 84px - env(safe-area-inset-bottom,0px)); } }
@media (prefers-reduced-motion: reduce) { .reading-actions button[aria-busy="true"]::before { animation: none; border-right-color: #8fa47c; } }
/* Verified text contrast on the actual light surfaces. */
.credential-rail .eyebrow { color: #705932; }
.service-card .eyebrow { color: #705932; }
.article-card-meta time { color: #50656b; }
.article-card p { color: #526747; }
.article-meta { color: #566849; }
.reading-actions [data-link-status] { color: #4d6838; }
.article-cta h2 { color: #24452f; }
.article-cta .fine-print { color: #4c6540; }
.article-cta .fine-print a { color: #234c37; text-decoration: underline; text-underline-offset: 3px; }
.contact-address h3, .standard-list h3 { color: #536b3f; }
@media (min-width: 980px) {
  #nav a[aria-current="page"] { background: #e4ecd9; color: #173f3b; }
}
/* Keep the open navigation above the fixed contact bar on short screens. */
@media (max-width: 979px) {
  .js .site-header:has(#nav.open) { z-index: 70; }
}

/* Reading refinement: resilient typography and clear disclosure states. */
:root { --site-header-height: 88px; }
.site-header { height: auto; min-height: 88px; padding-block: 10px; }
#nav { min-width: 0; flex-wrap: wrap; row-gap: 6px; }
#nav a { height: auto; min-height: 44px; white-space: normal; line-height: 1.6; text-align: center; }
.brand { min-width: 0; flex-shrink: 0; }
.brand-mark { flex-shrink: 0; }
.category-links a[aria-current],.pagination a[aria-current] { font-weight: 700; text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 2px; }
.article > section,.standard-list > section,main [id] { scroll-margin-top: calc(var(--site-header-height) + 24px); }
.form-grid ::placeholder { color: #536b46; font-size: 16px; opacity: 1; }
#consultation-text { font-size: 16px; }
.faq-list summary { gap: 20px; }
.faq-list summary > span { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border: 1px solid #b3c7a8; border-radius: 50%; background: #fffefa; color: #3f5e36; font-size: 20px; line-height: 1; transition: transform .18s,background-color .18s; }
.faq-list details[open] summary > span { background: #dfe9d5; border-color: #9eb88b; }
.faq-list summary:focus-visible { outline: 3px solid var(--focus); outline-offset: -3px; }
.print-heading,.print-draft { display: none; }
@media (max-width: 979px) {
  :root { --site-header-height: 76px; }
  .site-header { min-height: 76px; }
  .js #nav { top: 100%; max-height: calc(100vh - var(--site-header-height) - 12px); max-height: calc(100dvh - var(--site-header-height) - 12px - env(safe-area-inset-bottom,0px)); }
  .no-js .site-header { position: static; }
}
@media (max-width: 639px) {
  :root { --site-header-height: 72px; }
  .site-header { min-height: 72px; }
  .brand { flex-shrink: 1; white-space: normal; }
  .brand > span:last-child { min-width: 0; }
  .brand small { overflow-wrap: anywhere; }
  .menu { flex-shrink: 0; }
}
@media (prefers-reduced-motion: reduce) { .faq-list summary > span { transition: none; } }
@media (forced-colors: active) {
  .button,.menu,.reading-actions button,.search-field button,[data-retry-search],.mobile-contact a { border: 1px solid ButtonText !important; background: ButtonFace !important; color: ButtonText !important; }
  a[aria-current] { outline: 2px solid Highlight; outline-offset: -2px; font-weight: 700; text-decoration: underline; }
  .form-grid :is(input,select,textarea),#consultation-text,.link-fallback input { border: 1px solid ButtonText; }
  .faq-list summary > span { border-color: ButtonText; }
  :focus-visible { outline-color: Highlight !important; }
}

/* A quiet document layout for browser printing and PDF export. */
@media print {
  @page { margin: 15mm; }
  html,body { background: #fff !important; color: #202d29 !important; padding: 0 !important; }
  *,*::before,*::after { box-shadow: none !important; text-shadow: none !important; animation: none !important; transition: none !important; }
  main,main * { background: transparent !important; color: #202d29 !important; }
  .print-heading { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5mm; padding-bottom: 4mm; margin-bottom: 8mm; border-bottom: 1px solid #87948a; font-size: 9pt; line-height: 1.6; }
  .print-heading span { overflow-wrap: anywhere; }
  .skip-link,.site-header,.site-footer,.mobile-contact,.article-sidebar,.reading-actions,.mobile-toc,.link-fallback,.hero-visual,.intro-signature,.search-controls,.category-links,.pagination,.knowledge-tools,.standard-jump,.actions,.quiet-link,.consult-band,.article-cta,.article-company,.article-wrap > .section,.back-top-link,#consultation-helper fieldset,.copy-label,#consultation-text,#copy-status { display: none !important; }
  .wrap,.article-wrap { width: 100%; max-width: none; padding-inline: 0; }
  .hero,.intro-layout,.article-layout,.service-detail,.about-grid,.consultation-layout,.story-grid,.journal-grid,.contact-options { display: block; }
  .hero-stage::before { display: none; }
  .hero,.page-intro,.section,.article-wrap { padding-block: 5mm; }
  .article { padding: 0; border: 0; border-radius: 0; }
  .article-header { padding-bottom: 5mm; margin-bottom: 6mm; }
  main h1,.article-header h1,.page-intro h1 { font-size: 24pt !important; line-height: 1.45 !important; }
  main h2 { font-size: 17pt !important; }
  main h3 { font-size: 13pt !important; }
  main :is(h1,h2,h3,h4,summary) { break-after: avoid-page; }
  main p,main li { font-size: 10.5pt !important; line-height: 1.85 !important; orphans: 3; widows: 3; }
  .article > section { margin-top: 7mm; }
  .article > section h2 { padding-bottom: 3mm; margin-bottom: 4mm; }
  .article > section p { margin-bottom: 4mm; }
  .service-grid,.article-grid,.knowledge-section .article-grid,.topic-grid,.trust-grid,.answer-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 5mm; }
  .service-card,.article-card,.topic-grid > article,.trust-grid > article,.answer-list > article,.certificate-card,.faq-list details,.takeaway { break-inside: avoid; }
  .service-card,.article-card,.topic-grid > article,.trust-grid > article { padding: 5mm; }
  .takeaway,.checklist,.contact-address,.preparation { border: 1px solid #b8c0b7; padding: 5mm; }
  .faq-list summary { min-height: 0; padding: 4mm 0 2mm; font-size: 12pt; }
  .faq-list summary > span { display: none; }
  .faq-list details::details-content { content-visibility: visible; display: block; }
  .faq-list details > p { display: block !important; padding: 0 0 4mm; }
  .sources a { display: block; min-height: 0; color: #202d29; text-decoration: underline; }
  .sources a[href^="https:"]::after { content: attr(href); display: block; font-size: 8pt; line-height: 1.5; overflow-wrap: anywhere; text-decoration: none; }
  .print-draft { display: block; white-space: pre-wrap; overflow-wrap: anywhere; font: 11pt/1.8 var(--sans); padding: 5mm; border: 1px solid #aab7ac; }
  .breadcrumbs { font-size: 9pt; margin-bottom: 4mm; }
  .certificate-preview img { max-height: 90mm; object-fit: contain; }
  a { overflow-wrap: anywhere; }
}
@media screen { .site-header #nav { row-gap: 6px; } }

/* Keep long identifiers and topic labels readable with enlarged text. */
.footer-top > *,.topic-grid > article { min-width: 0; overflow-wrap: anywhere; }
.footer-phone { overflow-wrap: anywhere; }
.topic-grid .eyebrow { overflow-wrap: anywhere; }
@media (max-width: 639px) { .footer-top,.topic-grid { grid-template-columns: minmax(0,1fr); } }


/* Surface finish: quiet architectural depth and input parity. */
@media screen {
  .hero-stage::before { background-image: linear-gradient(#456b5409 1px,transparent 1px),linear-gradient(90deg,#456b5409 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,transparent 35%,#000 75%); }
  .hero-visual { border-color: #b7cbb7; box-shadow: 0 22px 48px #173d4614,inset 0 1px 0 #ffffffb3; }
  .page-intro { background: linear-gradient(120deg,#f5f5ed,#edf2e7 64%,#e4eddf); }
  .company-story { background: linear-gradient(110deg,#e7ede1,#f4f5ee); }
  .service-card,.article-card { box-shadow: 0 2px 8px #243e3305; transition: background-color .18s,border-color .18s,box-shadow .18s,transform .18s; }
  .service-card h3,.article-card h3 { text-decoration-thickness: 1px; text-underline-offset: .22em; }
  .service-card .card-link > span,.article-card .card-link > span { width: 32px; height: 32px; border-color: #adbea3; background: #f0f4e9; transition: background-color .18s,border-color .18s,color .18s,transform .18s; }
  :is(.service-card,.article-card):focus-visible { border-color: #527b5f; box-shadow: 0 10px 28px #173d4612; }
  :is(.service-card,.article-card):focus-visible h3 { text-decoration-line: underline; }
  :is(.service-card,.article-card):focus-visible .card-link > span { background: #244c40; color: #fff; border-color: #244c40; }
  :is(.service-card,.article-card):active { background-color: #e8efdf; transform: translateY(0); box-shadow: inset 0 1px 4px #173d460a; }
  .button:active { box-shadow: inset 0 2px 4px #102b3526; }
  .reading-actions button[aria-busy="true"] { opacity: 1; }
  .article > section:target > h2,.standard-list > section:target h2 { text-decoration: underline; text-decoration-color: #91ab7b; text-decoration-thickness: 2px; text-underline-offset: .25em; }
  .company-facts,.contact-address,.preparation { box-shadow: 0 4px 16px #30483306,inset 0 1px 0 #ffffffa6; }
  .form-grid label:focus-within,.copy-label:has(+ textarea:focus) { color: #244c40; }
  @media (hover: hover) and (pointer: fine) {
    :is(.service-card,.article-card):hover { box-shadow: 0 12px 32px #173d4614; }
    :is(.service-card,.article-card):hover h3 { text-decoration-line: underline; }
    :is(.service-card,.article-card):hover .card-link > span { background: #244c40; color: #fff; border-color: #244c40; }
    .article-card:hover .card-link > span { transform: translateX(3px); }
  }
  @media (max-width: 639px) { .hero-stage::before { background-size: 48px 48px; mask-image: linear-gradient(180deg,transparent 5%,#000 80%); } }
  @media (prefers-reduced-motion: reduce) {
    .service-card,.article-card,.button,.card-link > span { transition: none; transform: none !important; }
  }
  @media (forced-colors: active) {
    .hero-stage::before { background: none; }
    .service-card,.article-card { box-shadow: none; }
    :is(.service-card,.article-card):is(:hover,:focus-visible) .card-link > span { background: ButtonFace; color: ButtonText; border-color: ButtonText; }
    .article > section:target > h2,.standard-list > section:target h2 { text-decoration-color: Highlight; }
  }
}


/* Search and disclosure controls: calm surfaces, explicit recovery. */
@media screen {
  .search-controls { background: linear-gradient(125deg,#edf2e7,#f6f6ee); border-color: #bbcdb4; }
  .search-controls .search-hint { margin: 7px 0 14px; color: #53654c; font-size: 13px; line-height: 1.8; }
  .search-field { align-items: stretch; }
  .search-field input { box-shadow: inset 0 1px 3px #244c4008; }
  .search-field input:disabled { background: #eef0e8; color: #586351; cursor: not-allowed; }
  .search-field button:disabled { color: #586351; background: #eef0e8; cursor: not-allowed; }
  .search-controls #search-status { padding-top: 12px; margin-top: 14px; border-top: 1px solid #cbd8c1; }
  [data-retry-search],.search-reset { min-height: 44px; padding: 9px 17px; border: 1px solid #789169; border-radius: 5px; background: #fffefa; color: #244c40; font: inherit; font-size: 14px; cursor: pointer; }
  [data-retry-search] { margin: 6px 0 0 6px; }
  .search-empty { padding: 40px 24px; border-style: solid; background: #f5f7ef; }
  .search-empty p { max-width: 32em; margin-inline: auto; color: #53654c; line-height: 1.9; }
  .search-reset { margin-top: 20px; }
  .search-reset:focus-visible,[data-retry-search]:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
  .search-reset:active,[data-retry-search]:active,.search-field button:not(:disabled):active { box-shadow: inset 0 2px 4px #244c4026; }
  .faq-list details { box-shadow: 0 2px 8px #244c4004; }
  .faq-list details[open] { border-color: #94ab83; box-shadow: 0 5px 16px #244c4007; }
  .faq-list .faq-toggle { position: relative; }
  .faq-list .faq-toggle::before,.faq-list .faq-toggle::after { content: ""; position: absolute; width: 12px; height: 1px; background: currentColor; left: 8px; top: 14px; }
  .faq-list .faq-toggle::after { transform: rotate(90deg); transition: transform .18s; }
  .faq-list details[open] summary > .faq-toggle { transform: none; background: #244c40; color: #fff; border-color: #244c40; }
  .faq-list details[open] .faq-toggle::after { transform: none; }
  .faq-list summary:focus-visible .faq-toggle { border-color: #244c40; }
  @media (hover: hover) and (pointer: fine) { .search-reset:hover,[data-retry-search]:hover { background: #244c40; color: #fff; border-color: #244c40; } }
  @media (max-width: 639px) { .search-empty { padding: 32px 20px; text-align: left; } .search-empty strong { font-size: 20px; line-height: 1.6; } .search-reset { width: 100%; } }
  @media (prefers-reduced-motion: reduce) { .faq-list .faq-toggle::after { transition: none; } }
  @media (forced-colors: active) { .search-reset,[data-retry-search],.faq-list details[open] summary > .faq-toggle { background: ButtonFace; color: ButtonText; border-color: ButtonText; } .search-controls #search-status { border-color: CanvasText; } }
}


/* Navigation finish: clear states and comfortable contact targets. */
@media screen {
  .menu-icon { position: relative; flex: 0 0 18px; width: 18px; height: 18px; }
  .menu-icon::before,.menu-icon::after { content: ""; position: absolute; width: 18px; height: 2px; left: 0; top: 8px; border-radius: 1px; background: currentColor; transition: transform .18s; }
  .menu-icon::before { transform: translateY(-3px); }
  .menu-icon::after { transform: translateY(3px); }
  .menu[aria-expanded="true"] .menu-icon::before { transform: rotate(45deg); }
  .menu[aria-expanded="true"] .menu-icon::after { transform: rotate(-45deg); }
  .site-footer { background-image: linear-gradient(120deg,#f0f2e9,#e9eee1); }
  .footer-top > div:nth-child(2) { align-self: start; padding: 22px; border: 1px solid #c6d4b8; border-radius: 6px; background: #fafbf4; }
  .footer-label { margin-bottom: 7px; line-height: 1.8; }
  .footer-phone { display: flex; align-items: center; min-height: 44px; margin-bottom: 4px; }
  .footer-top a[href^="mailto:"] { display: flex; align-items: center; min-height: 44px; padding-block: 8px; color: #425b3c; font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
  .footer-links { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; align-content: start; }
  .footer-links a { min-height: 44px; justify-content: space-between; gap: 14px; padding: 10px 0; border-bottom: 1px solid #cbd8bf; }
  .footer-links a > span { flex: 0 0 20px; width: 20px; text-align: center; color: #486444; }
  .footer-links a:focus-visible,.footer-top a[href^="tel:"]:focus-visible,.footer-top a[href^="mailto:"]:focus-visible { text-decoration: underline; text-underline-offset: .25em; }
  .back-top-link:focus-visible > span { background: #244c40; border-color: #244c40; color: #fff; }
  .mobile-contact a:active { box-shadow: inset 0 2px 5px #183d3026; }
  @media (hover: hover) and (pointer: fine) {
    .footer-top a[href^="tel:"]:hover,.footer-top a[href^="mailto:"]:hover { color: #244c40; text-decoration: underline; text-underline-offset: .25em; }
    .back-top-link:hover > span { background: #244c40; border-color: #244c40; color: #fff; }
  }
  @media (min-width: 640px) and (max-width: 979px) { .footer-links { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 32px; } }
  @media (max-width: 979px) { .js #nav a[aria-current="page"] { box-shadow: inset 3px 0 0 #58765a; } }
  @media (max-width: 639px) { .footer-top > div:nth-child(2) { padding: 20px; } }
  @media (prefers-reduced-motion: reduce) { .menu-icon::before,.menu-icon::after { transition: none; } }
  @media (forced-colors: active) {
    .footer-top > div:nth-child(2),.footer-links a { border-color: ButtonText; }
    .back-top-link:is(:hover,:focus-visible) > span { background: ButtonFace; color: ButtonText; border-color: ButtonText; }
  }
}


/* Consultation workspace: calm field hierarchy and a distinct reading area. */
@media screen {
  #consultation-helper { background: linear-gradient(145deg,#fffefa,#f8faf3); border-color: #becdb2; }
  #consultation-helper fieldset { min-width: 0; }
  .form-grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,14rem),1fr)); row-gap: 26px; }
  .form-grid .field-label { display: flex; align-items: center; gap: 12px; line-height: 1.8; }
  .form-grid .field-label::after { content: ""; flex: 1 1 20px; height: 1px; background: #d4dfc9; }
  .form-grid label:focus-within .field-label { color: #244c40; }
  .form-grid label:focus-within .field-label::after { background: #58765a; height: 2px; }
  .form-grid :is(input,textarea):not(:placeholder-shown) { background: #f7faf2; border-color: #8da67e; }
  .consultation-preview { margin-top: 28px; padding: 20px; border: 1px solid #c9d6be; border-radius: 6px; background: #eef3e5; box-shadow: inset 0 1px 0 #ffffffb3; }
  .consultation-preview .copy-label { margin: 0; display: block; line-height: 1.8; }
  .consultation-preview #consultation-text { margin-top: 12px; background: #fffefa; color: #344a2a; min-height: 190px; border-color: #b8c9a7; }
  .consultation-preview:focus-within { border-color: #58765a; }
  #consultation-helper [data-copy-consultation] { margin-top: 20px; min-height: 50px; }
  #copy-status { margin-top: 18px; padding-top: 14px; border-top: 1px solid #d4dfc9; line-height: 1.8; }
  @media (max-width: 639px) {
    .consultation-preview { padding: 16px; }
    #consultation-helper [data-copy-consultation] { width: 100%; justify-content: center; }
  }
  @media (forced-colors: active) {
    .consultation-preview { border-color: ButtonText; }
    .form-grid label:focus-within .field-label::after { background: Highlight; }
    #copy-status { border-color: CanvasText; }
  }
}

/* Shared control system: legible states, quiet depth and deliberate rhythm. */
@media screen {
  :root { --control-ink: #244c40; --control-wash: #e6eddf; --control-edge: #9faf91; }
  .button { min-height: 52px; max-width: 100%; gap: 18px; padding: 13px 24px; line-height: 1.65; text-align: center; box-shadow: inset 0 1px 0 #ffffff14,0 2px 4px #173d460d; }
  .button > :is(span,svg) { flex-shrink: 0; }
  .button.secondary { box-shadow: inset 0 1px 0 #fff,0 2px 4px #173d4606; }
  .button:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
  .button:not(:disabled):active { transform: translateY(1px); box-shadow: inset 0 2px 4px #102b3526; }
  .button:disabled { transform: none; box-shadow: none; cursor: not-allowed; }
  .button[aria-busy="true"] { cursor: wait; background: #e5edda; border-color: #9db38e; color: #405535; }
  .category-links a,.pagination a,.standard-jump a { min-height: 44px; line-height: 1.65; transition: background-color .16s,color .16s,border-color .16s,box-shadow .16s; }
  .standard-jump a { display: inline-flex; align-items: center; padding: 10px 14px; }
  .category-links a:not([aria-current]):is(:hover,:focus-visible),
  .pagination a:not([aria-current]):is(:hover,:focus-visible),
  .standard-jump a:is(:hover,:focus-visible) { color: var(--control-ink); background: var(--control-wash); border-color: var(--control-edge); }
  .category-links a[aria-current]:is(:hover,:focus-visible),.pagination a[aria-current]:is(:hover,:focus-visible) { background: var(--control-ink); border-color: var(--control-ink); color: #fff; }
  .category-links a:active,.pagination a:active,.standard-jump a:active { box-shadow: inset 0 2px 3px #244c401a; }
  .pagination a { font-variant-numeric: tabular-nums; }
  .breadcrumbs a { min-height: 44px; text-decoration-thickness: 1px; text-underline-offset: .25em; }
  .breadcrumbs a:focus-visible { text-decoration-line: underline; }
  .text-link,.quiet-link { text-decoration-skip-ink: auto; transition: color .16s,border-color .16s; }
  .text-link:focus-visible,.quiet-link:focus-visible { border-bottom-color: currentColor; }
  .article :is(p,li) a { text-decoration: underline; text-decoration-color: #839f76; text-underline-offset: .2em; text-decoration-thickness: 1px; }
  .article :is(p,li) a:focus-visible { text-decoration-thickness: 2px; }
  .actions { row-gap: 14px; }
  @media (max-width: 639px) {
    .actions > .button { flex: 1 1 200px; }
    .breadcrumbs { column-gap: 10px; }
  }
  @media (hover: none), (pointer: coarse) {
    .button:hover { transform: none; }
    .category-links a:not([aria-current]):hover,.pagination a:not([aria-current]):hover { color: var(--control-ink); }
    .button:not(:disabled):active { transform: none; box-shadow: inset 0 2px 5px #102b3533; }
  }
  @media (prefers-reduced-motion: reduce) {
    .button,.category-links a,.pagination a,.standard-jump a,.text-link,.quiet-link { transition: none; transform: none !important; }
  }
  @media (forced-colors: active) {
    .button,.category-links a,.pagination a,.standard-jump a { box-shadow: none !important; }
    .category-links a:not([aria-current]):is(:hover,:focus-visible),.pagination a:not([aria-current]):is(:hover,:focus-visible),.standard-jump a:is(:hover,:focus-visible) { color: LinkText; background: Canvas; border-color: LinkText; }
    .category-links a[aria-current]:is(:hover,:focus-visible),.pagination a[aria-current]:is(:hover,:focus-visible) { color: HighlightText; background: Highlight; border-color: Highlight; }
  }
}

/* Source navigation: visible references and machine-readable citations share one source. */
@media screen {
  .article .sources { background: #f3f6ee; border: 1px solid #d5dfcc; border-radius: 8px; padding: 24px; }
  .sources-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; padding-bottom: 15px; border-bottom: 1px solid #d5dfcc; }
  .article .sources .sources-heading h2 { margin: 0; font-size: 18px; line-height: 1.65; }
  .sources-label { color: #52634b; font-size: 10px; line-height: 1.8; letter-spacing: .15em; }
  .article .sources ul { list-style: none; padding: 0; margin: 6px 0 0; }
  .sources li + li { border-top: 1px solid #dbe3d4; }
  .article .sources a { display: flex; align-items: center; min-height: 48px; padding: 12px 0; border: 0; color: #28422f; font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; text-decoration: underline; text-decoration-color: #90a085; text-underline-offset: .2em; }
  .sources a:hover { color: #163f2a; text-decoration-color: currentColor; }
  .sources a:focus-visible { outline: 3px solid #526c3e; outline-offset: 3px; border-radius: 2px; }
  .article .sources:target { border-color: #7d9569; }
  .article .sources:focus-visible { outline: 3px solid #526c3e; outline-offset: 4px; }
  .article-toc .toc-sources { margin-top: 13px; padding-top: 13px; border-top: 1px solid #cbd8bf; border-radius: 0; justify-content: space-between; gap: 12px; color: #36502d; font-weight: 600; }
}
@media screen and (max-width: 639px) {
  .article .sources { padding: 20px 17px; }
  .sources-heading { gap: 8px 12px; }
}
@media (forced-colors: active) {
  .article .sources, .sources-heading, .sources li + li, .article-toc .toc-sources { border-color: CanvasText; }
}
/* Approved work photographs: full-frame, quiet editorial gallery. */
.work-gallery{background:#edf1ed;border-block:1px solid #d3ded6;scroll-margin-top:calc(var(--site-header-height,88px) + 20px)}
.work-gallery-meta{margin:12px 0 0;color:#526c67;font-size:13px;line-height:1.9}
.work-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.work-photo{margin:0;min-width:0;border:1px solid #cbd8d0;background:#fcfcf8;border-radius:3px;box-shadow:0 4px 14px #153e4605}
.work-photo>a{display:block;color:#244e53;text-decoration:none}
.work-photo-frame{display:flex;aspect-ratio:4/3;align-items:center;justify-content:center;margin:10px;background:#e1e7e1}
.work-photo-frame img{display:block;width:100%;height:100%;object-fit:contain}
.work-photo-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:12px 18px;font-size:14px;line-height:1.8;border-top:1px solid #dbe2d8}
.work-photo-number{margin-left:5px;font-family:Georgia,serif;font-variant-numeric:tabular-nums;color:#796235}
.work-photo-caption>span:last-child{text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.work-photo>a:hover{background:#f3f6ef;color:#163f46}.work-photo>a:focus-visible{outline:3px solid #796235;outline-offset:4px}
.work-gallery-more{margin-top:24px}.work-gallery-more summary{display:flex;justify-content:center;align-items:center;gap:18px;min-height:56px;padding:13px 22px;border:1px solid #9bae9e;background:#f9faf5;color:#244e53;font-size:14px;line-height:1.8;cursor:pointer;list-style:none}
.work-gallery-more summary::-webkit-details-marker{display:none}.work-gallery-more summary:hover{background:#e4ece2}.work-gallery-more summary:focus-visible{outline:3px solid #796235;outline-offset:4px}
.gallery-collapse{display:none}.work-gallery-more[open] .gallery-expand{display:none}.work-gallery-more[open] .gallery-collapse{display:inline}.gallery-plus{font-size:20px;color:#796235}.work-gallery-more[open] .gallery-plus{transform:rotate(45deg)}.work-gallery-more[open] .work-photo-grid{margin-top:24px}
.work-gallery-entry{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;margin-top:26px;border:1px solid #afc1b4;background:#edf2e9;color:#244e53;text-decoration:none!important}
.work-gallery-entry>span:first-child{display:grid;gap:4px}.work-gallery-entry small{font-size:10px;letter-spacing:.14em;color:#526c67}.work-gallery-entry strong{font-size:17px!important}.work-gallery-entry>span:last-child{font-size:13px;white-space:nowrap}.work-gallery-entry:hover{background:#e3ebdd}.work-gallery-entry:focus-visible{outline:3px solid #796235;outline-offset:4px}
@media(max-width:1000px){.work-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:600px){.work-photo-grid{grid-template-columns:1fr;gap:18px}.work-photo-caption{padding:12px 15px}.work-gallery-entry{align-items:start;gap:12px;padding:18px;flex-wrap:wrap}.work-gallery-more summary{min-height:52px}}
@media(forced-colors:active){.work-photo,.work-gallery-more summary,.work-gallery-entry{border-color:CanvasText;box-shadow:none}.work-photo>a,.work-gallery-entry{color:LinkText}.work-gallery-more summary{color:ButtonText}.work-photo-frame{background:Canvas}}
@media print{.work-gallery{background:white;padding-block:10mm}.work-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm}.work-photo{break-inside:avoid;box-shadow:none}.work-photo-caption{font-size:10pt;min-height:0;padding:2mm}.work-photo-caption>span:last-child{display:none}.work-photo a::after{content:none!important}.work-gallery-more{display:none}.work-gallery-entry{break-inside:avoid}}

/* Professional information architecture: one visual hierarchy across page families. */
@media screen {
  :root { --professional-paper:#fbfcf8; --professional-ink:#173f43; --professional-line:#c7d3c8; }
  body { background:var(--professional-paper); }
  .page-intro { background:linear-gradient(110deg,#eef2e9,#f8faf4); border-bottom:1px solid var(--professional-line); }
  .page-intro h1 { letter-spacing:.01em; text-wrap:balance; }
  .page-intro .lede { max-width:44em; line-height:1.95; }
  .section-head h2 { letter-spacing:.015em; text-wrap:balance; }
  .section-head > p,.section-head .lede { max-width:39em; }
  .hero h1 { font-size:clamp(25px,2.55vw,36px); line-height:1.7; font-weight:600; letter-spacing:.015em; }
  .hero-statement { display:block; margin-top:12px; color:#244c40; font-size:clamp(38px,4.2vw,60px); line-height:1.4; letter-spacing:.025em; font-weight:500; }
  .hero-subtitle { row-gap:10px; line-height:1.8; }
  .hero-evidence { display:flex; flex-wrap:wrap; gap:8px 22px; padding-top:22px; margin-top:26px; border-top:1px solid #9bb19b; }
  .hero-evidence a { display:inline-flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; color:#244c40; font-size:14px; text-underline-offset:5px; }
  .hero-evidence a:is(:hover,:focus-visible) { text-decoration:underline; }
  .page-wayfinding { display:flex; gap:28px; align-items:center; padding-block:18px; border-bottom:1px solid var(--professional-line); }
  .wayfinding-label { font-size:12px; letter-spacing:.1em; flex-shrink:0; color:#57665c; }
  .page-wayfinding ol { list-style:none; display:flex; gap:12px 28px; flex-wrap:wrap; padding:0; margin:0; }
  .page-wayfinding a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:var(--professional-ink); font-size:14px; text-underline-offset:5px; }
  .page-wayfinding a > span { font-size:11px; font-variant-numeric:tabular-nums; color:#667560; }
  .page-wayfinding a:is(:hover,:focus-visible) { text-decoration:underline; }
  :is(#about-overview,#service-options,#service-help,#service-scope,#service-preparation,#service-reading,#knowledge-search,#knowledge-results,#contact-phone,#contact-details,#contact-faq) { scroll-margin-top:115px; }
  .service-detail h3 { margin-top:32px; padding-top:20px; border-top:1px solid var(--professional-line); }
  .service-evidence { margin-top:28px; padding:20px 24px; background:#eef3e8; border-left:2px solid #789077; }
  .service-evidence .scope-note { padding:0; margin:0; border:0; background:none; font-size:14px; }
  .service-evidence .text-link { margin-top:8px; }
  .preparation { border-top:3px solid #647d64; }
  .preparation ol { padding-left:1.3em; }
  .preparation li { padding-block:10px; border-bottom:1px solid #d3dec9; }
  .reading-path { border-top:1px solid var(--professional-line); }
  .answer-list article { padding:26px; background:#f2f5ed; border-top:2px solid #91a584; }
  .answer-list h3 { font-size:19px; line-height:1.75; }
  .service-library { border-top:1px solid var(--professional-line); }
  .service-library-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; margin:0; padding:0; gap:0 40px; }
  .service-library-grid li { min-width:0; border-bottom:1px solid var(--professional-line); }
  .service-library-grid a { position:relative; display:flex; flex-direction:column; justify-content:center; min-height:126px; padding:24px 32px 24px 0; color:var(--professional-ink); }
  .library-meta { font-size:12px; line-height:1.75; color:#586858; margin-bottom:8px; }
  .library-title { font-size:17px; line-height:1.8; overflow-wrap:anywhere; }
  .library-arrow { position:absolute; right:0; top:29px; color:#61785b; }
  .service-library-grid a:is(:hover,:focus-visible) .library-title { text-decoration:underline; text-underline-offset:5px; }
  .library-more { margin-top:26px; }
  .library-more summary { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:18px 22px; min-height:58px; background:#edf2e7; border:1px solid #bdcdb4; border-radius:4px; cursor:pointer; color:var(--professional-ink); font-size:14px; list-style:none; }
  .library-more summary::-webkit-details-marker { display:none; }
  .library-more summary:is(:hover,:focus-visible) { background:#e3ecda; }
  .library-count { font-size:20px; flex-shrink:0; }
  .library-more[open] .library-count { transform:rotate(45deg); }
  .library-more[open] summary { border-bottom-left-radius:0; border-bottom-right-radius:0; }
  .library-topic { padding-top:28px; }
  .library-topic h3 { font-size:16px; }
  .library-topic h3 span { color:#586858; font-size:13px; font-weight:400; }
  .article > section > h2 { padding-bottom:14px; border-bottom:1px solid var(--professional-line); }
  .article .article-sources { background:#f1f5ec; }
  @media (max-width:979px) {
    .page-wayfinding { align-items:flex-start; flex-direction:column; gap:2px; padding-block:16px; }
    .page-wayfinding ol { gap:4px 22px; }
    .service-library-grid { gap:0 24px; }
  }
  @media (max-width:639px) {
    .hero h1 { font-size:24px; }
    .hero-statement { font-size:clamp(34px,8.5vw,46px); }
    .hero-evidence { gap:4px 20px; }
    .hero-evidence a { font-size:13px; }
    .page-wayfinding ol { column-gap:22px; }
    .page-wayfinding a { font-size:13px; }
    .service-library-grid { grid-template-columns:1fr; }
    .service-library-grid a { min-height:110px; padding-block:22px; }
    .library-title { font-size:16px; }
    .answer-list article,.service-evidence { padding:22px 20px; }
  }
  @media (forced-colors:active) {
    .page-wayfinding,.service-library-grid li,.library-more summary,.service-evidence { border-color:CanvasText; }
    .hero-evidence a,.page-wayfinding a,.library-more summary { color:LinkText; }
  }
}
@media print { .page-wayfinding,.hero-evidence { display:none; } .service-library-grid { list-style:none; padding:0; } .library-meta { display:block; } }
