/* SDS: light, material and depth. Motion stays small and optional. */
:root{--shadow-soft:0 8px 24px #182b1e0b,0 24px 60px #182b1e0b;--shadow-image:0 12px 24px #101d1917,0 35px 70px #101d1921}
body{background:radial-gradient(ellipse at 4% 32%,#e9e8d95c,transparent 35%),var(--paper)}
.site-header{background:#171c19f5;box-shadow:0 4px 26px #0000001a}
.header-inner{min-height:112px;position:relative}
.brand{gap:20px;flex-shrink:0}
.sds-mark{display:block;width:119px;height:auto;max-width:none;position:static;aspect-ratio:620/188;filter:drop-shadow(0 1px 1px #0003)}
.brand-wordmark{display:block;font-size:.64rem;letter-spacing:.12em;line-height:1.6;padding-left:20px;border-left:1px solid #cfba8d40}
.header-nav{gap:32px}.nav-links{gap:26px}
.mega-menu>summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;color:#d7ddd5;padding:12px 0;white-space:nowrap;user-select:none}
.mega-menu>summary::-webkit-details-marker{display:none}
.mega-menu>summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.mega-menu>summary svg{transition:transform .18s;color:#bdc9b4}
.mega-menu[open]>summary{color:var(--gold)}.mega-menu[open]>summary svg{transform:rotate(180deg)}
.mega-panel{position:absolute;top:calc(100% - 2px);left:50%;transform:translateX(-50%);width:min(1240px,calc(100vw - 64px));padding:22px;background:#fffefa;border:1px solid #e5e7dc;border-radius:18px;box-shadow:0 20px 36px #0002,0 60px 90px #0003;color:var(--ink);max-height:calc(100dvh - 135px);overflow:auto;z-index:30}
.mega-top{display:flex;justify-content:space-between;gap:20px;margin:1px 3px 17px;font-size:.61rem;letter-spacing:.1em;text-transform:uppercase;color:#65725c}
.mega-top>span:last-child{color:#a08759;font-weight:700}
.mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.nav-links .mega-card{display:flex;align-items:center;gap:16px;min-height:101px;padding:20px 18px;border:1px solid #dce0d4;border-radius:12px;background:linear-gradient(135deg,#f8f8f1,#f3f4eb);color:var(--ink);transition:box-shadow .2s,background .2s,border-color .2s,transform .2s;overflow-wrap:anywhere}
.mega-card>span:last-child{min-width:0}
.mega-icon{color:#597055;flex-shrink:0}
.mega-card strong{display:block;font-size:.85rem;font-weight:600;letter-spacing:-.015em;line-height:1.35}
.mega-card small{display:block;font-size:.7rem;color:#727b6c;line-height:1.5;margin-top:5px}
.nav-links .mega-card:hover{background:#edf2e6;color:var(--green);border-color:#b1c1a4;box-shadow:0 5px 14px #253d2610;transform:translateY(-2px)}
.mega-bottom{display:flex;justify-content:flex-end;border-top:1px solid #e3e7db;margin:19px 3px 0;padding-top:11px}
.nav-links .mega-bottom a{color:var(--green);font-size:.72rem}
.hero{background:radial-gradient(ellipse at 87% 30%,#35543b80,transparent 62%),radial-gradient(ellipse at 5% 90%,#3c372c42,transparent 40%),#141b17}
.hero:before{border:0;border-radius:0;background:linear-gradient(90deg,transparent,#dfd1a21a,transparent);width:440px;height:1200px;right:20%;top:-500px;transform:rotate(-33deg);filter:blur(29px)}
.hero:after{border:0;width:800px;height:800px;right:-300px;top:-250px;background:radial-gradient(circle,#afc7980f,transparent 67%);border-radius:50%}
.hero-grid{padding:77px 0 79px;gap:70px;grid-template-columns:1.13fr 1fr}
.hero h1{font-size:clamp(3rem,5.2vw,5.2rem);text-shadow:0 2px 30px #0002}
.hero h1 .serif{color:#d5bd87}.hero .intro{color:#c3cdbd}
.button{border-radius:5px;box-shadow:0 6px 14px #1128171a,0 18px 30px #11281712;position:relative;overflow:hidden}
.button:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(135deg,#fff2,transparent 55%)}
.hero .button{box-shadow:0 5px 10px #0002,0 18px 34px #0003}
.image-frame{margin:0;position:relative;border-radius:11px;border:1px solid #8d977a38;box-shadow:var(--shadow-image);overflow:hidden;background:#202b23;isolation:isolate}
.image-frame:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px 0 #fff3,inset 0 0 0 1px #fff1;background:linear-gradient(125deg,#fff1,transparent 45%)}
.image-frame img{display:block;width:100%;height:auto;object-fit:cover}
.image-frame figcaption{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;position:absolute;left:0;right:0;bottom:0;padding:50px 23px 18px;color:#f1f0e5;font-size:.72rem;line-height:1.5;background:linear-gradient(transparent,#111c17e8)}
.image-frame figcaption small{font-size:.53rem;color:#c9cfbc;flex-shrink:0;max-width:145px;text-align:right}
.image-frame figcaption>span:empty{display:none}
.image-frame figcaption:has(>span:empty){justify-content:flex-end}
.hero-image{aspect-ratio:.87;max-height:645px;border-color:#c0cba845;box-shadow:0 18px 35px #0004,0 55px 95px #0005;transform:perspective(1500px) rotateY(-3deg)}
.hero-image img{height:100%;object-position:50% 45%}
.hero-image figcaption{display:block;padding:90px 27px 23px;font-size:.86rem}
.hero-image figcaption>span{display:block;max-width:280px}
.hero-image figcaption small{display:block;text-align:left;max-width:none;margin-top:9px;color:#bfcab4;letter-spacing:.025em}
/* Cinematic light stays inside the opening image; copy and navigation stay still. */
.hero-image img{transform:scale(1.025);transform-origin:56% 45%}
.hero-image figcaption{z-index:2}
.hero-lights{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;border-radius:inherit}
.hero-lights>span{position:absolute;display:block;pointer-events:none;mix-blend-mode:screen}
.light-warm{width:115%;height:95%;top:-27%;right:-40%;background:radial-gradient(ellipse,#f0cc8d6b 0%,#d8ae6a29 37%,transparent 70%);opacity:.6;transform:translate(-4%,10%) scale(1.08)}
.light-green{width:100%;height:100%;left:-40%;bottom:-35%;background:radial-gradient(ellipse,#96c8aa45 0%,#518a6020 42%,transparent 70%);opacity:.6}
.light-beam{width:86%;height:180%;top:-38%;left:-34%;background:linear-gradient(90deg,transparent 10%,#f3ddb909 32%,#ffe8b94d 49%,#fff6dc32 52%,#c5d4b617 63%,transparent 82%);transform:translateX(45%) rotate(24deg);opacity:.48}
.light-toggle{display:none;position:absolute;z-index:3;top:15px;right:15px;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #f1e3bf50;border-radius:50%;background:#122119b8;color:#f2e6c9;cursor:pointer;box-shadow:0 3px 12px #0002;transition:background .2s}
.light-toggle:hover{background:#2b3e2fe8}.light-toggle:focus-visible{outline:3px solid #e2c58a;outline-offset:4px}
.light-play-icon{display:none}.light-toggle[aria-pressed=true] .light-play-icon{display:block}.light-toggle[aria-pressed=true] .light-pause-icon{display:none}
@media(prefers-reduced-motion:no-preference){
 .has-js .light-toggle{display:flex}
 .hero-image img{animation:sds-image-drift 22s ease-in-out infinite alternate;animation-play-state:paused}
 .light-warm{animation:sds-warm-drift 13s ease-in-out infinite alternate;animation-play-state:paused}
 .light-green{animation:sds-green-drift 16s ease-in-out infinite alternate;animation-play-state:paused}
 .light-beam{animation:sds-light-sweep 14s ease-in-out infinite;animation-play-state:paused}
 .hero-image.is-light-active img,.hero-image.is-light-active .hero-lights>span{animation-play-state:running}
}
@keyframes sds-image-drift{from{transform:scale(1.025)}to{transform:scale(1.065) translate(-.5%,.25%)}}
@keyframes sds-warm-drift{from{transform:translate(-9%,7%) scale(.95);opacity:.38}to{transform:translate(3%,23%) scale(1.17);opacity:.82}}
@keyframes sds-green-drift{from{transform:translate(-5%,8%) scale(.96);opacity:.3}to{transform:translate(17%,-12%) scale(1.14);opacity:.7}}
@keyframes sds-light-sweep{0%,100%{transform:translateX(-48%) rotate(24deg);opacity:0}18%{opacity:.42}52%{opacity:.7}82%{opacity:.25}94%{transform:translateX(190%) rotate(24deg);opacity:0}}
/* Familiar native cursors: arrow over the page, pointing hand on controls. */
@media(hover:hover) and (pointer:fine){
 a[href],button:not(:disabled),summary{cursor:pointer}
 .image-frame,.portrait-frame,.header-portrait,.topic-visual{transition:box-shadow .45s ease,translate .45s ease,scale .6s ease}
 .image-frame img,.portrait-frame img,.header-portrait img,.topic-visual img{transition:transform .75s cubic-bezier(.2,.65,.3,1),filter .65s ease}
 .text-link{transition:color .25s ease,border-color .25s ease,text-shadow .3s ease}
 .button{transition:background .25s ease,box-shadow .35s ease,transform .25s ease}
 .text-link:hover,.text-link:focus-visible{color:#847043;text-shadow:0 2px 16px #c7ac7920}
 .hero .text-link:hover,.closing .text-link:hover,.ecosystem .text-link:hover{color:#e0c58f}
 .button:hover,.button:focus-visible{box-shadow:0 9px 18px #11281720,0 22px 40px #11281718}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .image-frame:hover,.portrait-frame:hover,.header-portrait:hover{translate:0 -3px;scale:1.006;box-shadow:0 15px 30px #101d1920,0 40px 75px #101d1929}
 .image-frame:not(.hero-image):hover img,.portrait-frame:hover img,.header-portrait:hover img,.ai-topic-card:hover .topic-visual img{transform:scale(1.025);filter:brightness(1.035)}
 .hero-image:hover img{filter:brightness(1.045)}
 .text-link:hover svg,.text-link:focus-visible svg{transform:translate(4px,-1px)}
 .button:hover svg,.button:focus-visible svg{translate:2px 0}
 .button svg{transition:translate .25s ease}
}
.service-strip{position:relative;background:#17231b;box-shadow:inset 0 1px 0 #d9e8b50b}
.service-grid{gap:22px;border:0}
.service-card{border:1px solid #dce0d3;border-radius:10px;background:linear-gradient(145deg,#fffefa,#f2f4e9);box-shadow:var(--shadow-soft);transition:box-shadow .25s,transform .25s,border-color .25s}
.service-card:hover{transform:translateY(-4px);border-color:#b5c4a8;box-shadow:0 10px 20px #18321f12,0 30px 55px #18321f12}
.card-top svg{padding:8px;box-sizing:content-box;border:1px solid #d7dfca;border-radius:8px;background:#eaf0e2}
.ai-feature{background:radial-gradient(ellipse at 95% 0,#d6e1cb,transparent 60%),linear-gradient(130deg,#e5ecdd,#eef0e6)}
.ai-feature-grid{gap:75px}.ai-feature .image-frame{transform:rotate(1.2deg)}
.brand-story{background:radial-gradient(ellipse at 6% 60%,#e7dec84d,transparent 55%),#f5f4ed}
.brand-story-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:82px;align-items:center}
.brand-story .image-frame{transform:rotate(-1deg)}
.brand-story h2{font-size:clamp(2.2rem,3.9vw,3.8rem)}
.brand-story .lead{font-size:1rem;margin-top:27px}
.step{position:relative}.step-number{color:#927748;border-color:#b7c6a8}
.ecosystem{position:relative;background:radial-gradient(ellipse at 15% 25%,#35493190,transparent 70%),#172019;overflow:hidden}
.ecosystem-card{border-radius:10px;box-shadow:0 15px 35px #0003;background:linear-gradient(135deg,#29452d8c,#1b281e);border-color:#b4c69a38}
.ecosystem-card:first-child{background:radial-gradient(ellipse at 10% 10%,#587b4270,transparent 65%),#243729}
.ecosystem-card:after{content:'';position:absolute;right:-40px;top:-100px;width:170px;height:500px;transform:rotate(-35deg);background:linear-gradient(90deg,transparent,#dcc99a0b,transparent);pointer-events:none}
.portrait-frame{margin:0;max-width:450px;aspect-ratio:1/1.08;position:relative;border:9px solid #e8eadf;outline:1px solid #c9d1be;box-shadow:var(--shadow-image);overflow:hidden;background:#1e291f;border-radius:3px}
.portrait-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 43%}
.portrait-frame:after{content:'';position:absolute;inset:11px;border:1px solid #dfd7bd42;pointer-events:none}
.portrait-frame figcaption{position:absolute;bottom:0;left:0;right:0;padding:52px 25px 23px;color:#f5f3e8;background:linear-gradient(transparent,#132117e8);font-size:.83rem;letter-spacing:.015em}
.portrait-frame figcaption span{display:block;font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:#c0cbb2;margin-top:5px}
.closing{background:radial-gradient(ellipse at 85% 0,#69825355,transparent 62%),linear-gradient(110deg,#203d2c,#2f523a);box-shadow:inset 0 1px 0 #d2dfb92a,0 -10px 40px #19341c09}
.site-footer{background:#131b16}
.page-hero{position:relative;background:radial-gradient(ellipse at 86% 30%,#3d5d3f80,transparent 67%),linear-gradient(110deg,#152018,#1b251c);overflow:hidden;padding:66px 0 73px;box-shadow:inset 0 -1px 0 #c1d3a51a}
.page-hero:before{content:'';position:absolute;width:400px;height:900px;top:-390px;right:30%;transform:rotate(-35deg);background:linear-gradient(90deg,transparent,#ddc9930c,transparent);filter:blur(20px);pointer-events:none}
.page-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;position:relative}
.page-hero-grid>div{min-width:0}.page-hero h1{font-size:clamp(2.8rem,4.7vw,4.7rem);overflow-wrap:anywhere}
.page-hero .lead{font-size:1rem;line-height:1.8;margin-top:25px;color:#c1ccba}
.page-image{aspect-ratio:1.35;max-height:420px;border-color:#c3d1ad38;box-shadow:0 14px 30px #0003,0 35px 60px #0003}
.page-image img{height:100%;object-position:50% 45%}
.header-portrait{margin:0;justify-self:end;width:280px;max-width:100%;aspect-ratio:1;border:5px solid #86997740;box-shadow:0 20px 45px #0004;overflow:hidden;border-radius:7px}
.header-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.document-hero .page-hero-grid{grid-template-columns:1.5fr 1fr}.document-hero h1{font-size:clamp(1.8rem,3.5vw,3.4rem)}
.document-hero .page-image{aspect-ratio:2;max-height:235px;opacity:.9}
.document-hero{padding:50px 0 54px}
.breadcrumb{display:inline-block;color:#b5c6a4;font-size:.7rem;margin-bottom:28px;border-bottom:1px solid #899e7055}
.ai-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.ai-topic-card{display:flex;flex-direction:column;background:#fffefa;border:1px solid #d9e0d0;border-radius:10px;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .22s,box-shadow .22s}
.ai-topic-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #1739211c}
.topic-visual{padding:27px 27px 0;color:var(--green)}
.with-image .topic-visual{padding:0;aspect-ratio:1.8;overflow:hidden;background:#203026}
.with-image .topic-visual img{display:block;width:100%;height:100%;object-fit:cover}
.topic-body{padding:25px 27px 26px;display:flex;flex-direction:column;flex:1}
.topic-category{font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:#65785a;margin-bottom:13px}
.topic-body h3{font-size:1.4rem;line-height:1.2;letter-spacing:-.03em}
.topic-body p{font-size:.86rem;line-height:1.7;color:var(--muted);margin-top:15px}
.topic-arrow{color:var(--green);margin-top:auto;padding-top:22px}
.project-intro{max-width:800px;font-size:.93rem;color:#bccab2;line-height:1.85;margin-top:26px}
.ai-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:40px}
.ecosystem .ai-topic-card{background:linear-gradient(130deg,#2f4c3490,#1c2c20);border-color:#adbf963a;box-shadow:0 18px 40px #0003}
.ecosystem .topic-visual,.ecosystem .topic-arrow{color:#d5c08e}.ecosystem .topic-category{color:#aebfa0}.ecosystem .topic-body p{color:#bdcbb5}.ecosystem .topic-body h3{color:#f2f1e7}
.ecosystem .topic-body{padding:24px}.ecosystem .topic-visual{padding:24px 24px 0}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}
.detail-heading{font-size:2.3rem;line-height:1.15;max-width:440px}
.feature-list,.delivery-list{list-style:none;padding:0;margin:0}
.feature-list{border-top:1px solid #c6d0ba}
.feature-list li{display:flex;align-items:center;gap:18px;padding:23px 0;border-bottom:1px solid #d4ddca;font-size:1.03rem;line-height:1.6}
.feature-list svg{color:#7f8e60}.delivery-list{margin-top:28px}
.delivery-list li{display:flex;align-items:flex-start;gap:22px;margin-top:21px;font-size:.92rem;color:var(--muted)}
.delivery-list li>span{color:#99804f;font-size:.7rem;padding-top:3px;flex-shrink:0}
.workflow-section{background:radial-gradient(ellipse at 82% 0,#d7e3ca,transparent 65%),#e8eee0}
.workflow-section h2{font-size:2.4rem}
.workflow-strip{display:grid;grid-template-columns:1fr 35px 1fr 35px 1fr;align-items:center;margin-top:42px}
.workflow-node{padding:25px 26px;background:#fffefa;border:1px solid #bdcdb0;border-radius:9px;box-shadow:0 15px 30px #1e3b2110;min-height:120px}
.workflow-node>span{display:block;font-size:.64rem;color:#99804f;margin-bottom:13px}
.workflow-node strong{display:block;font-size:1.05rem;font-weight:500;line-height:1.5;color:var(--green)}
.workflow-arrow{text-align:center;color:#8c9f72;font-size:1.4rem}
.ai-agreements{margin-top:0}.source-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 25px;margin-top:25px}
.source-links>span{width:100%;font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;color:#7a896a}
.source-links .text-link{font-size:.72rem;margin-top:0}
.related-heading{margin-top:75px}.related-heading h2{font-size:2.3rem}
.scope-box,.example{border-radius:9px;box-shadow:var(--shadow-soft)}
.field input,.field select,.field textarea{border-radius:4px;box-shadow:inset 0 1px 3px #19391b06}
.legal-copy{background:#fffefa;border:1px solid #e5e8dd;border-radius:7px;padding:10px 32px 35px;box-shadow:0 12px 40px #1d361b07}
.privacy-copy{background:#fffefa;border:1px solid #e0e6d5;padding:38px 42px;border-radius:7px;box-shadow:var(--shadow-soft)}
@media(max-width:1100px){
 .sds-mark{width:101px}.brand{gap:15px}.brand-wordmark{font-size:.55rem;padding-left:15px;display:block}.header-nav{gap:22px}.nav-links{gap:21px}
 .hero-grid,.page-hero-grid{gap:40px}.hero h1{font-size:clamp(3rem,5.25vw,4.5rem)}.brand-story-grid{gap:50px}
 .ai-topic-grid{gap:19px}.ai-project-grid{grid-template-columns:1fr 1fr}.detail-grid{gap:60px}
 .mega-panel{padding:19px}.nav-links .mega-card{gap:12px;padding:18px 15px}.mega-card strong{font-size:.77rem}.mega-card small{font-size:.65rem}
}
@media(max-width:800px){
 .header-inner{min-height:94px}.sds-mark{width:105px}.brand-wordmark{font-size:.58rem}.nav-links{width:100%;gap:12px}.header-nav{gap:18px}
 .mega-menu{width:100%}.mega-menu>summary{justify-content:space-between;width:100%;font-size:.95rem;padding:10px 0}
 .mega-panel{position:static;transform:none;width:100%;max-height:63dvh;overflow:auto;margin:8px 0 12px;padding:15px;border-radius:12px;box-shadow:0 14px 24px #0003}
 .mega-grid{grid-template-columns:1fr;gap:9px}.nav-links .mega-card{padding:14px 13px;min-height:80px;gap:14px;border-radius:9px}.mega-card strong{font-size:.85rem}.mega-card small{font-size:.71rem}
 .mega-top{font-size:.55rem;margin-bottom:13px}.mega-bottom{justify-content:flex-start;margin-top:14px}.mega-bottom .text-link{font-size:.72rem}
 .hero-grid{grid-template-columns:1fr;padding:58px 0 57px;gap:40px}.hero h1{font-size:clamp(2.9rem,8vw,4.5rem)}
 .hero-image{max-width:540px;width:100%;justify-self:center;aspect-ratio:1.05;max-height:570px;transform:none}.hero-image img{object-position:50% 42%}
 .service-grid{gap:18px}.service-card{min-height:310px}.ai-feature-grid{gap:40px}.ai-feature .image-frame{transform:none}
 .brand-story-grid{grid-template-columns:1fr;gap:40px}.brand-story .image-frame{transform:none}.brand-story h2{font-size:2.6rem}
 .portrait-frame{max-width:none;aspect-ratio:1/1.15}.portrait-frame figcaption{font-size:.65rem;padding:45px 16px 16px}.portrait-frame figcaption span{font-size:.45rem}
 .page-hero{padding:52px 0 58px}.page-hero-grid{grid-template-columns:1fr;gap:35px}.page-hero h1{font-size:clamp(2.6rem,7.8vw,4rem)}
 .page-image{width:100%;max-height:370px;aspect-ratio:1.7}.page-image img{object-position:50% 40%}
 .header-portrait{justify-self:start;width:240px}.document-hero .page-hero-grid{grid-template-columns:1fr;gap:28px}.document-hero .page-image{max-height:180px;aspect-ratio:2.7}
 .ai-topic-grid{grid-template-columns:1fr 1fr}.tools-grid{grid-template-columns:1fr}.topic-body{padding:22px}.topic-visual{padding:23px 23px 0}
 .detail-grid{grid-template-columns:1fr;gap:45px}.detail-heading{font-size:2rem}.feature-list li{font-size:1rem;padding:20px 0}
 .workflow-node{padding:20px 18px;min-height:120px}.workflow-node strong{font-size:.88rem}.workflow-strip{grid-template-columns:1fr 25px 1fr 25px 1fr}
 .scope-box{gap:24px}.legal-copy{padding:7px 23px 28px}.privacy-copy{padding:29px 28px}
}
@media(max-width:480px){
 .header-inner{min-height:88px}.brand{gap:13px}.sds-mark{width:86px}.brand-wordmark{font-size:.5rem;letter-spacing:.09em;padding-left:13px;line-height:1.6}.menu-toggle{padding:8px 10px;font-size:.73rem}
 .hero-grid{padding:43px 0 46px}.hero h1{font-size:2.92rem}.hero-image{aspect-ratio:.95}.hero-image figcaption{padding:65px 20px 18px;font-size:.77rem}.hero-image figcaption small{font-size:.48rem}
 .service-grid{grid-template-columns:1fr;gap:17px}.service-card{min-height:0;padding:27px}.service-card h3{font-size:1.4rem}
 .image-frame figcaption{padding:40px 17px 13px;font-size:.61rem}.image-frame figcaption small{font-size:.45rem;max-width:115px}
 .hero-image figcaption{padding-top:75px}.ai-feature-grid{gap:35px}.brand-story h2{font-size:2.5rem}
 .portrait-frame{aspect-ratio:1/1.06;border-width:7px}.portrait-frame figcaption{font-size:.77rem;padding:45px 20px 19px}.portrait-frame figcaption span{font-size:.5rem}
 .page-hero{padding:41px 0 45px}.page-hero .eyebrow{font-size:.58rem}.page-hero .lead{font-size:.94rem}.page-hero-grid{gap:29px}
 .page-image{aspect-ratio:1.5}.document-hero .page-image{aspect-ratio:2.4;max-height:145px}.document-hero h1{font-size:clamp(1.6rem,8.2vw,2.4rem)}
 .header-portrait{width:200px}.ai-topic-grid,.ai-project-grid{grid-template-columns:1fr}.with-image .topic-visual{aspect-ratio:1.9}
 .topic-body h3{font-size:1.5rem}.topic-body p{font-size:.9rem}.topic-category{font-size:.56rem}.topic-body{padding:24px}
 .project-intro{font-size:.89rem}.workflow-section h2{font-size:2rem}.workflow-strip{grid-template-columns:1fr;margin-top:29px}.workflow-node{min-height:0;padding:20px 23px}.workflow-node strong{font-size:1rem}.workflow-arrow{transform:rotate(90deg);padding:2px 0}
 .feature-list li{font-size:.94rem;gap:16px}.detail-heading{font-size:1.95rem}.delivery-list li{font-size:.9rem}.ai-agreements h2{font-size:1.8rem}
 .legal-copy{padding:4px 16px 22px}.privacy-copy{padding:27px 23px}.privacy-copy h2{font-size:1.5rem}.legal-copy h2{font-size:1.35rem}
}
@media(prefers-reduced-motion:reduce){.hero-image,.ai-feature .image-frame,.brand-story .image-frame{transform:none}.service-card:hover,.ai-topic-card:hover,.nav-links .mega-card:hover{transform:none}}
/* Readability: comfortable text sizes, including the supporting copy. */
.service-location{margin-top:30px;color:var(--green);font-size:1rem;line-height:1.8}
.service-questions{margin-top:34px;max-width:940px}.service-question{border-bottom:1px solid #bdcbb0;padding:22px 0}.service-question summary{font-size:1.1rem;font-weight:600;color:var(--green);line-height:1.5}.service-question p{margin-top:18px;font-size:1rem;line-height:1.8;max-width:850px}
html{font-size:18px}
body{line-height:1.75}
.nav-links{font-size:.9rem}.languages a{font-size:.8rem}
.brand-wordmark{font-size:.65rem}
.eyebrow,.page-hero .eyebrow{font-size:.78rem;letter-spacing:.11em}
.hero .intro,.page-hero .lead,.lead{font-size:1.1rem;line-height:1.8}
.hero-note,.small,.project-status,.examples-note,.form-hint,.project-intro{font-size:.88rem;line-height:1.75}
.service-card p,.service-row p,.service-row li,.topic-body p,.step p,.ecosystem-card p,.about-grid p,.delivery-list li,.feature-list li,.legal-copy p,.privacy-copy p,.contact-business{font-size:1rem;line-height:1.8}
.button,.text-link,.print-button,.menu-toggle{font-size:.9rem}
.mega-card strong{font-size:.95rem;line-height:1.4}.mega-card small{font-size:.85rem;line-height:1.6}
.mega-top{font-size:.76rem}.nav-links .mega-bottom a{font-size:.88rem}
.topic-category,.source-links>span,.source-links .text-link,.breadcrumb,.delivery-list li>span,.service-num,.step-number,.workflow-node>span{font-size:.82rem}
.image-frame figcaption{display:block;font-size:.88rem;line-height:1.6}
.image-frame figcaption small{display:block;max-width:none;text-align:left;font-size:.8rem;line-height:1.5;margin-top:6px}
.portrait-frame figcaption{font-size:.94rem}.portrait-frame figcaption span{font-size:.77rem;letter-spacing:.09em}
.footer-tag,.footer-column{font-size:.95rem}.footer-bottom{font-size:.84rem}.footer-links{gap:24px}
.legal-toc a{font-size:.85rem;line-height:1.65;padding:7px 0}.legal-toc h2{font-size:.9rem}
.service-strip .wrap{font-size:.78rem;line-height:1.65;gap:18px;flex-wrap:wrap}
@media(max-width:1100px){
 .header-inner{min-height:94px;gap:15px;flex-wrap:wrap}
 .has-js .menu-toggle{display:block}
 .header-nav{width:100%;flex-direction:column;align-items:flex-start;gap:20px;padding:4px 0 24px}
 .has-js .header-nav{display:none}.has-js .site-header[data-menu-open=true] .header-nav{display:flex}
 .nav-links{flex-direction:column;align-items:flex-start;width:100%;gap:18px;font-size:1rem}
 .languages{padding-left:0;border:0;gap:10px}
 .mega-menu{width:100%}.mega-menu>summary{justify-content:space-between;width:100%;font-size:1rem}
 .mega-panel{position:static;transform:none;width:100%;max-height:54dvh;margin:8px 0 12px;padding:15px;border-radius:12px;box-shadow:0 14px 24px #0003}
 .mega-grid{grid-template-columns:1fr 1fr}.nav-links .mega-card{padding:17px 15px;min-height:100px;gap:14px}
 .mega-card strong{font-size:.95rem}.mega-card small{font-size:.85rem}
 .brand-wordmark{font-size:.63rem}
}
@media(max-width:600px){
 .mega-grid{grid-template-columns:1fr}.mega-top{font-size:.7rem}.mega-bottom .text-link{font-size:.88rem}
 .brand{gap:12px}.brand-wordmark{font-size:.59rem;padding-left:12px}.sds-mark{width:79px}.menu-toggle{padding:9px 12px}
 .hero h1{font-size:clamp(2.2rem,10.8vw,2.92rem)}
 .hero .intro,.page-hero .lead{font-size:1.03rem}.hero-note{font-size:.86rem}
 .image-frame figcaption{padding-left:18px;padding-right:18px}
 .hero-image figcaption{font-size:.9rem}.hero-image figcaption small{font-size:.8rem}
 .service-strip .wrap{font-size:.77rem;grid-template-columns:1fr;gap:9px}
 .portrait-frame figcaption{font-size:.9rem}.portrait-frame figcaption span{font-size:.75rem}
 .contact-email{font-size:.91rem;overflow-wrap:anywhere}
 .scope-box{padding:22px}.scope-box h2{overflow-wrap:anywhere}
}
@media print{html{font-size:16px}.image-frame,.header-portrait,.portrait-frame,.mega-panel{display:none!important}.page-hero-grid{display:block!important}.page-hero{background:white!important;box-shadow:none}.page-hero:before{display:none}.legal-copy,.privacy-copy{padding:0;border:0;box-shadow:none}.document-hero h1{font-size:26pt}.page-hero .lead{color:#222}}
