/* Homepage only. Account and checkout keep their existing theme styling. */
body.dt-homepage { --dt-ink:#163e35; --dt-muted:#62736a; --dt-paper:#f7f8f1; --dt-line:#dbe2d6; background:var(--dt-paper); color:var(--dt-ink); margin:0; font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.6; }
.dt-homepage *, .dt-homepage *::before, .dt-homepage *::after { box-sizing:border-box; }
.dt-homepage a { color:inherit; text-decoration:none; }
.dt-homepage a:focus-visible, .dt-homepage button:focus-visible, .dt-homepage input:focus-visible, .dt-homepage summary:focus-visible { outline:3px solid #447949; outline-offset:5px; }
.dt-homepage p, .dt-homepage h1, .dt-homepage h2, .dt-homepage h3 { margin:0; }
.dt-skip { position:absolute; left:24px; top:-100px; z-index:2000; background:white; padding:12px 20px; }
.dt-skip:focus { top:10px; }
.dt-header { height:80px; padding:0 5%; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--dt-line); gap:24px; }
.dt-brand { display:inline-flex; align-items:center; font-size:25px; letter-spacing:-1.2px; font-weight:750; white-space:nowrap; }
.dt-brand > span:not(.dt-brand-mark):not(.dt-brand-dot) { font-weight:400; }
.dt-brand-mark { display:inline-flex; align-items:center; justify-content:center; width:35px; height:35px; border:1px solid #9cac8e; border-radius:50%; margin-right:10px; font-size:32px; font-weight:400; line-height:1; }
.dt-brand-dot { color:#78a244; }
.dt-header nav { display:flex; align-items:center; gap:32px; font-size:13px; font-weight:600; }
.dt-header .dt-account { border:1px solid #bdcbbb; padding:9px 17px; border-radius:5px; }
.dt-header .dt-cart { font-weight:400; }
.dt-hero { padding:28px 5% 26px; display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:8%; }
.dt-kicker { color:#56704e; text-transform:uppercase; font-size:10px; font-weight:700; letter-spacing:1.7px; }
.dt-kicker span { font-size:8px; margin-right:7px; color:#78a244; }
.dt-hero h1 { font-size:clamp(34px,3.65vw,57px); line-height:1.08; letter-spacing:-2.1px; margin:12px 0 17px; font-weight:500; }
.dt-hero h1 em { font-family:Georgia,'Times New Roman',serif; font-weight:400; color:#567451; }
.dt-hero-copy > p:not(.dt-kicker) { font-size:14px; line-height:1.65; color:var(--dt-muted); }
.dt-more { display:inline-flex; gap:24px; align-items:center; font-size:12px; font-weight:700; margin-top:20px; border-bottom:1px solid #acbca3; padding-bottom:4px; }
.dt-search-panel { min-width:0; }
.dt-search-panel .domaintrees-domain-search { display:flex; flex-direction:column; }
.dt-search-panel h2 { order:0; font-size:23px; font-weight:500; letter-spacing:-.6px; margin:9px 0 17px; }
.dt-search-panel .domaintrees-domain-search > p { order:3; font-size:10px; color:var(--dt-muted); margin-top:13px; }
.dt-search-panel .domaintrees-domain-search > p strong { font-weight:600; }
.dt-search-panel form { order:1; display:flex; position:relative; gap:5px; border:1px solid #c3cfbe; border-radius:7px; padding:6px; background:#fff; box-shadow:0 5px 20px #193e3507; }
.dt-search-panel label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.dt-search-panel input { width:100%; min-width:0; border:0; background:transparent; padding:9px 12px; font:inherit; color:var(--dt-ink); height:46px; outline-offset:0; }
.dt-search-panel button { border:0; background:var(--dt-ink); color:white; font:600 13px Arial,sans-serif; border-radius:4px; padding:12px 24px; cursor:pointer; min-height:44px; transition:transform 140ms cubic-bezier(.23,1,.32,1),background-color 140ms ease; }
.dt-search-panel button:active { transform:scale(.97); }
.dt-search-panel button:disabled { cursor:wait; opacity:.65; }
.dt-search-panel .domaintrees-domain-result { order:2; font-size:13px; overflow-wrap:anywhere; }
.dt-search-panel .domaintrees-domain-result:not(:empty) { margin-top:13px; padding:12px; border:1px solid var(--dt-line); border-radius:5px; }
.dt-search-panel .domaintrees-domain-result button { display:block; margin-top:10px; }
.dt-search-note { margin-top:9px!important; font-size:11px; color:var(--dt-muted); }
.dt-map-wrap { width:100%; scroll-margin-top:16px; }
.dt-homepage .domaintrees-tree-map { margin:0; display:grid; grid-template-columns:1fr auto; border-top:1px solid var(--dt-line); }
.dt-homepage .domaintrees-tree-map__eyebrow { display:none; }
.dt-homepage #tree-map-title { grid-column:1; grid-row:1; align-self:center; font-size:16px; font-weight:500; padding:16px 0 16px 5vw; letter-spacing:-.2px; }
.dt-homepage .domaintrees-tree-map__demo { grid-column:2; grid-row:1; align-self:center; background:transparent; padding:8px 5vw 8px 20px; border:0; font-size:10px; color:var(--dt-muted); max-width:550px; }
.dt-homepage .domaintrees-tree-map__demo strong { color:#52733d; }
.dt-homepage .domaintrees-tree-map__canvas { grid-column:1/-1; grid-row:2; height:clamp(480px,66vh,780px); border-radius:0; box-shadow:none; border:0; border-block:1px solid #c9d8cb; margin:0; background:#dce8e6; }
.dt-homepage .domaintrees-tree-map__status { grid-column:1/-1; grid-row:4; font-size:11px; color:var(--dt-muted); padding:0 5% 14px; }
.dt-homepage .domaintrees-tree-map__legend { grid-column:1; grid-row:3; font-size:10px; gap:6px 10px; padding:16px 0 12px 5vw; }
.dt-homepage .domaintrees-tree-map__accessible { grid-column:2; grid-row:3/6; margin:0; padding:16px 5vw 12px 16px; font-size:11px; max-width:700px; }
.dt-homepage .domaintrees-tree-map__accessible summary { cursor:pointer; }
.dt-homepage .domaintrees-tree-map__accessible[open] { grid-column:1/-1; grid-row:5; padding-inline:5%; max-width:none; }
.dt-homepage .domaintrees-tree-map__accessible ol { columns:3; overflow-wrap:anywhere; }
.dt-homepage .leaflet-control-zoom { border:1px solid #bacabc!important; border-radius:5px; overflow:hidden; box-shadow:0 3px 12px #183b3210; margin:24px; }
.dt-homepage .leaflet-control-zoom a { background:var(--dt-paper); color:var(--dt-ink); width:36px; height:36px; line-height:36px; }
.dt-homepage .leaflet-control-attribution { font-size:10px; }
.dt-homepage .marker-cluster-small, .dt-homepage .marker-cluster-medium, .dt-homepage .marker-cluster-large { background:#8bab7760; }
.dt-homepage .marker-cluster div { background:#f8faf0; color:#234c38; font-weight:700; border:1px solid #8fa47d; }
.dt-about { padding:100px 8% 88px; display:grid; grid-template-columns:1fr 1fr; gap:13%; border-top:1px solid var(--dt-line); scroll-margin-top:30px; }
.dt-about h2, .dt-faq h2 { font-size:clamp(34px,4vw,58px); font-weight:400; letter-spacing:-2px; line-height:1.08; margin:16px 0 24px; }
.dt-about-intro > p:last-child { color:var(--dt-muted); max-width:390px; font-size:15px; }
.dt-about-details { padding-top:29px; color:var(--dt-muted); font-size:15px; }
.dt-about-details p + p { margin-top:19px; }
.dt-about-details .dt-lead { font-size:23px; color:var(--dt-ink); letter-spacing:-.4px; }
.dt-text-link { display:inline-block; margin-top:26px; font-size:13px; font-weight:700; border-bottom:1px solid #a9b9a0; padding-bottom:4px; color:var(--dt-ink)!important; }
.dt-steps { padding:70px 8% 82px; background:#e9efdf; }
.dt-section-heading h2 { font-size:35px; font-weight:400; letter-spacing:-1px; margin:10px 0 40px; }
.dt-step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:6%; }
.dt-step-number { font-size:10px; letter-spacing:1.5px; color:#48653c; }
.dt-step-grid article { border-top:1px solid #b7c7aa; padding-top:20px; }
.dt-step-grid h3 { font-size:24px; font-weight:400; letter-spacing:-.5px; margin:24px 0 13px; }
.dt-step-grid p { font-size:14px; color:#5c705b; }
.dt-faq { padding:88px 8%; display:grid; grid-template-columns:1fr 1.4fr; gap:10%; }
.dt-faq details { border-bottom:1px solid var(--dt-line); padding:19px 0; }
.dt-faq summary { font-size:15px; cursor:pointer; padding-right:12px; }
.dt-faq details p { padding:15px 0 3px; font-size:14px; color:var(--dt-muted); }
.dt-preview-note { display:flex; gap:16px; align-items:center; margin:0 8% 65px; padding:19px 24px; border:1px solid var(--dt-line); border-radius:4px; font-size:12px; color:var(--dt-muted); }
.dt-preview-note > span { font-size:27px; }
.dt-footer { display:flex; align-items:center; gap:30px; padding:30px 5%; border-top:1px solid var(--dt-line); }
.dt-footer p { font-size:12px; color:var(--dt-muted); flex:1; }
.dt-footer > a:last-child { font-size:12px; }
@media(hover:hover) and (pointer:fine) { .dt-homepage nav a:hover,.dt-more:hover,.dt-text-link:hover { color:#608344; } .dt-search-panel button:hover { background:#2e5845; } }
@media(max-width:760px) {
 .dt-header { height:72px; padding-inline:6%; } .dt-brand { font-size:22px; } .dt-brand-mark { width:29px;height:29px;font-size:26px; }
 .dt-header nav { gap:12px; } .dt-header nav > a:first-child,.dt-header nav > a:nth-child(2),.dt-cart { display:none; }
 .dt-header .dt-account { padding:7px 11px; }
 .dt-hero { grid-template-columns:1fr; padding:30px 6%; gap:28px; } .dt-hero h1 { font-size:39px; letter-spacing:-1.7px; } .dt-hero-copy > p:not(.dt-kicker) { font-size:13px; } .dt-desktop-break { display:none; }
 .dt-more { margin-top:15px; } .dt-search-panel > .dt-kicker { display:none; } .dt-search-panel h2 { margin-top:0; font-size:20px; } .dt-search-panel button { padding-inline:19px; }
 .dt-homepage .domaintrees-tree-map { grid-template-columns:1fr; } .dt-homepage #tree-map-title { padding:16px 6% 3px; grid-row:1; }
 .dt-homepage .domaintrees-tree-map__demo { grid-column:1; grid-row:2; padding:4px 6% 14px; }
 .dt-homepage .domaintrees-tree-map__canvas { grid-row:3; height:480px; }
 .dt-homepage .domaintrees-tree-map__legend { grid-row:4; padding:14px 6% 6px; font-size:10px; }
 .dt-homepage .domaintrees-tree-map__status { grid-row:5; padding:0 6% 8px; }
 .dt-homepage .domaintrees-tree-map__accessible, .dt-homepage .domaintrees-tree-map__accessible[open] { grid-column:1; grid-row:6; padding:5px 6% 16px; }
 .dt-homepage .domaintrees-tree-map__accessible ol { columns:1; } .dt-homepage .leaflet-control-zoom { margin:16px; }
 .dt-about { grid-template-columns:1fr; padding:55px 7%; gap:10px; } .dt-about h2,.dt-faq h2 { font-size:41px; } .dt-about-details { padding-top:10px; }
 .dt-steps { padding:50px 7%; } .dt-step-grid { grid-template-columns:1fr; gap:34px; } .dt-step-grid h3 { margin-top:14px; }
 .dt-faq { grid-template-columns:1fr; padding:50px 7%; gap:12px; } .dt-preview-note { margin-inline:7%; margin-bottom:40px; padding:16px; }
 .dt-footer { flex-wrap:wrap; padding:25px 7%; gap:15px; } .dt-footer p { flex-basis:100%; order:3; }
}
@media(prefers-reduced-motion:reduce) { .dt-homepage *, .dt-homepage *::before, .dt-homepage *::after { scroll-behavior:auto!important; transition:none!important; } }

.dt-header .dt-telegram { display:inline-flex; flex:none; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; background:#229ed9; color:#fff; }
.dt-header .dt-telegram:hover { background:#1679a9; color:#fff; }
@media(max-width:400px) { .dt-header { gap:10px; padding-inline:4%; } .dt-header nav { gap:8px; } }
