/*
Theme Name: IDP Journal
Theme URI: https://imagedownloaderpro.com/blog/
Author: ExtensioHub
Author URI: https://extensiohub.com/
Description: An editorial block theme for the Image Downloader Pro blog. Native WordPress templates, responsive reading layouts, and locally hosted brand fonts.
Version: 2.0.10
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: idp-journal
Tags: blog, full-site-editing, block-patterns, custom-colors, custom-logo, editor-style, featured-images, wide-blocks
*/

html { scroll-behavior:smooth; }
@font-face { font-family:"Font Awesome 6 Brands"; font-style:normal; font-weight:400; font-display:swap; src:url("https://imagedownloaderpro.com/assets/site-icons/fa-brands-400.2cf4d4a807.woff2") format("woff2"); }
body { margin:0; }
*, *::before, *::after { box-sizing:border-box; }
:root { --idp-ink:#101827; --idp-muted:#536174; --idp-blue:#2563eb; --idp-blue-dark:#1746b3; --idp-red:#dc2626; --idp-line:#dbe3ee; --idp-paper:#f7f9fc; --idp-soft-blue:#eaf1ff; }
.wp-site-blocks { min-height:100vh; min-height:100svh; padding:0; display:flex; flex-direction:column; }
.wp-site-blocks > * { margin-block:0; }
.wp-site-blocks > footer.wp-block-template-part { margin-top:auto; }
a { text-underline-offset:4px; }
a:focus-visible,summary:focus-visible { outline:none; text-decoration:underline 2px var(--idp-blue); text-underline-offset:5px; }
button:focus-visible,input:focus-visible { outline:none; box-shadow:0 0 0 4px #2563eb2e; }
.wp-site-blocks :focus:not(:focus-visible) { outline:none; }
img { max-width:100%; height:auto; }
.idp-shell { width:min(1200px, calc(100% - 80px)); margin-inline:auto; }
.idp-header { position:sticky; top:0; z-index:40; border-bottom:1px solid #dbe3eecc; background:#fffffff2; backdrop-filter:blur(14px); box-shadow:0 8px 30px #15213b08; }
.admin-bar .idp-header { top:32px; }
.idp-header-inner { min-height:90px; display:flex; align-items:center; gap:30px; }
.idp-brand { display:flex; align-items:center; gap:11px; text-decoration:none; color:var(--idp-ink); line-height:1.2; flex-shrink:0; }
.idp-brand img { width:40px; height:40px; object-fit:contain; }
.idp-brand-name { font-size:24px; font-weight:700; letter-spacing:-.65px; white-space:nowrap; transform:translateY(.22em); }
.idp-brand-name span { color:#dc2626; }
.idp-brand-lockup { display:flex; align-items:center; gap:18px; }
.idp-brand:hover,.idp-footer .idp-brand:hover { color:var(--idp-ink); }
.idp-brand:hover .idp-brand-name span { color:#dc2626; }
.idp-nav { display:flex; gap:28px; align-items:center; margin-left:auto; }
.idp-language-switcher { position:relative; margin-left:2px; }
.idp-language-switcher summary { display:flex; align-items:center; justify-content:center; gap:9px; min-width:132px; min-height:42px; padding:8px 12px; border:1px solid var(--idp-line); border-radius:999px; background:#fff; color:var(--idp-ink); font-size:14px; font-weight:600; line-height:1.2; cursor:pointer; list-style:none; white-space:nowrap; }
.idp-language-switcher summary::-webkit-details-marker { display:none; }
.idp-language-switcher summary::after { content:"⌄"; margin-left:auto; color:var(--idp-muted); font-size:12px; }
.idp-language-switcher[open] summary { border-color:#9bb8ed; box-shadow:0 0 0 3px #2563eb12; }
.idp-language-menu { position:absolute; z-index:80; top:calc(100% + 10px); right:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; width:min(420px,calc(100vw - 32px)); padding:10px; border:1px solid var(--idp-line); border-radius:16px; background:#fff; box-shadow:0 18px 45px #172b5024; }
.idp-language-menu a { display:flex; align-items:center; gap:10px; min-width:0; min-height:44px; padding:9px 11px; border-radius:9px; color:var(--idp-muted); font-size:14px; text-decoration:none; }
.idp-language-menu a span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.idp-language-flag { width:24px; height:18px; object-fit:cover; border-radius:3px; box-shadow:0 0 0 1px #00000024; flex:0 0 auto; }
.idp-language-menu a:hover,.idp-language-menu a:focus-visible { background:#f0f0ec; color:var(--idp-ink); text-decoration:none; }
.idp-language-menu a[aria-current="page"] { background:var(--idp-ink); color:#fff; font-weight:600; }
.idp-nav a { text-decoration:none; color:var(--idp-muted); font-size:15px; padding-block:10px; }
.idp-nav a:hover,.idp-nav a.idp-selected { color:var(--idp-blue); }
.idp-nav .idp-selected { box-shadow:0 2px var(--idp-blue); }
.idp-button,.idp-nav a.idp-button { display:inline-flex; justify-content:center; align-items:center; gap:12px; padding:13px 21px; background:var(--idp-blue); color:#fff; border:1px solid var(--idp-blue); border-radius:7px; text-decoration:none; font-size:15px; font-weight:600; line-height:1.35; transition:background .18s,transform .18s; }
.idp-button:hover,.idp-nav a.idp-button:hover { background:#1d4ed8; color:#fff; transform:translateY(-1px); }
.idp-mobile-nav { display:none; }
.idp-eyebrow { font-family:"DM Mono",monospace; color:var(--idp-blue); font-size:12px; letter-spacing:1.8px; text-transform:uppercase; line-height:1.6; margin:0 0 23px; }
.idp-home-main { padding-top:32px; }
.idp-hero { position:relative; padding:84px 62px 70px; margin:0 0 54px; border:1px solid #d8e2f0; border-radius:22px; display:grid; grid-template-columns:1.55fr 1fr; gap:70px; align-items:center; overflow:hidden; background:linear-gradient(135deg,#fff 0%,#f8faff 52%,#eaf1ff 100%); box-shadow:0 24px 65px #172b500a; }
.idp-hero::before { content:""; position:absolute; width:330px; height:330px; right:-130px; top:-180px; border:58px solid #2563eb10; border-radius:50%; }
.idp-hero::after { content:""; position:absolute; width:155px; height:155px; right:25%; bottom:-118px; border:32px solid #dc26260b; border-radius:50%; }
.idp-hero > * { position:relative; z-index:1; }
.idp-hero h1 { font-family:"DM Serif Display",Georgia,serif; font-weight:400; font-size:clamp(46px,5.2vw,74px); line-height:1.04; letter-spacing:-2.6px; margin:0; }
.idp-hero h1 em { font-weight:400; color:var(--idp-blue); }
.idp-hero-intro { padding-bottom:5px; }
.idp-hero-intro p { font-size:18px; line-height:1.65; color:var(--idp-muted); max-width:355px; margin:0 0 20px; }
.idp-text-link { display:inline-flex; align-items:center; gap:10px; color:var(--idp-ink); font-size:15px; font-weight:600; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:4px; }
.idp-text-link:hover { color:var(--idp-blue); }
.idp-feature { display:grid; grid-template-columns:1.15fr 1fr; min-height:365px; border:1px solid var(--idp-line); border-radius:12px; overflow:hidden; background:white; margin-bottom:48px; }
.idp-feature-art { display:block; position:relative; overflow:hidden; background:#d9e7ff; min-height:320px; }
.idp-feature-art > img { width:100%; height:100%; object-fit:cover; display:block; position:absolute; inset:0; transition:transform .4s; }
.idp-feature-art:hover > img { transform:scale(1.025); }
.idp-art-label { position:absolute; bottom:25px; left:25px; right:25px; display:flex; align-items:center; gap:13px; padding:15px 18px; border:1px solid #ffffffcf; background:#ffffffec; border-radius:8px; box-shadow:0 12px 34px #172b5020; color:var(--idp-ink); }
.idp-art-label img { width:32px; height:32px; }
.idp-art-label strong { font-size:15px; font-weight:600; }
.idp-art-label span { margin-left:auto; font-family:"DM Mono",monospace; font-size:11px; letter-spacing:1px; color:var(--idp-muted); }
.idp-feature-copy { padding:41px 45px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.idp-feature-copy .idp-eyebrow { margin-bottom:15px; }
.idp-feature-copy h2 { font-family:"DM Serif Display",Georgia,serif; font-size:clamp(30px,3.1vw,42px); font-weight:400; line-height:1.13; letter-spacing:-.8px; margin:0 0 15px; }
.idp-feature-copy h2 a { color:inherit; text-decoration:none; }
.idp-feature-copy > p:not(.idp-eyebrow) { color:var(--idp-muted); font-size:16px; line-height:1.7; margin:0 0 24px; }
.idp-section-label { margin:0; font-size:14px; font-weight:600; letter-spacing:.2px; }
.idp-guides { margin-bottom:70px; }
.idp-guide-grid { margin-top:19px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--idp-line); }
.idp-guide { text-decoration:none; color:var(--idp-ink); padding:25px 24px 25px 0; display:grid; grid-template-columns:34px 1fr; gap:14px; }
.idp-guide + .idp-guide { padding-left:24px; border-left:1px solid var(--idp-line); }
.idp-guide-number { font-family:"DM Mono",monospace; font-size:12px; color:var(--idp-blue); padding-top:4px; }
.idp-guide h3 { font-size:18px; line-height:1.4; font-weight:600; margin:0 0 7px; letter-spacing:-.2px; }
.idp-guide p { font-size:14px; line-height:1.6; color:var(--idp-muted); margin:0; }
.idp-guide:hover h3 { color:var(--idp-blue); }
.idp-latest { margin-bottom:80px; }
.idp-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:30px; }
.idp-section-heading .idp-eyebrow { margin-bottom:8px; }
.idp-section-heading h2 { font-family:"DM Serif Display",Georgia,serif; font-weight:400; letter-spacing:-.6px; font-size:38px; margin:0; }
.idp-section-intro { color:var(--idp-muted); margin:7px 0 0; font-size:15px; }
.idp-section-heading .wp-block-search { width:min(330px,100%); margin:0; }
.wp-block-search__inside-wrapper { gap:8px; }
.wp-block-search__input { border:1px solid #c9d2df; padding:12px 17px; background:white; border-radius:999px; font:inherit; min-width:0; font-size:15px; }
.wp-block-search__button { border-radius:999px; margin-left:0; padding:11px 18px; border:0; font-size:14px; }
.idp-post-grid { gap:24px!important; }
.idp-post-grid > li { position:relative; border:1px solid var(--idp-line); background:white; border-radius:14px; overflow:hidden; padding:0 27px 28px; box-shadow:0 12px 34px #172b5006; transition:transform .2s,border-color .2s,box-shadow .2s; }
.idp-post-grid > li:hover { transform:translateY(-3px); border-color:#b9cbed; box-shadow:0 20px 46px #172b5010; }
.idp-post-grid > li:not(:has(.wp-block-post-featured-image))::before { content:"IDP / PRACTICAL GUIDE"; display:flex; align-items:flex-end; min-height:105px; margin:0 -27px 23px; padding:21px 27px; color:#315cb5; background:radial-gradient(circle at 80% 20%,#2563eb1f 0 10%,transparent 10.5%),linear-gradient(135deg,#eef4ff,#f9fbff); border-bottom:1px solid #dae5f8; font-family:"DM Mono",monospace; font-size:10px; letter-spacing:1.2px; }
.idp-post-grid .wp-block-post-featured-image { margin:0 -25px 23px; }
.idp-post-grid .wp-block-post-featured-image img { width:100%; aspect-ratio:16/10; object-fit:cover; }
.idp-post-grid .wp-block-post-date { margin-top:25px; color:var(--idp-muted); font-family:"DM Mono",monospace; font-size:12px; }
.idp-post-grid .wp-block-post-title { font-family:"DM Serif Display",Georgia,serif; font-weight:400; font-size:28px; line-height:1.2; letter-spacing:-.4px; margin-top:12px; }
.idp-post-grid .wp-block-post-title a { text-decoration:none; color:var(--idp-ink); }
.idp-post-grid .wp-block-post-title a:hover { color:var(--idp-blue); }
.idp-post-grid .wp-block-post-excerpt { color:var(--idp-muted); font-size:16px; line-height:1.65; }
.idp-post-grid .wp-block-read-more { display:inline-flex; align-items:center; font-size:14px; font-weight:600; color:var(--idp-blue); margin-top:10px; text-decoration:none; }
.wp-block-query-pagination { padding-top:32px; gap:20px; font-size:15px; }
.wp-block-query-pagination-numbers { display:flex; gap:15px; }
.idp-empty { padding:28px; border:1px solid var(--idp-line); border-radius:8px; color:var(--idp-muted); background:white; }
.idp-cta { position:relative; padding:43px 48px; border:1px solid #1e335b; background:linear-gradient(125deg,#101827 0%,#172b50 100%); color:#fff; border-radius:16px; display:flex; justify-content:space-between; gap:30px; align-items:center; margin-bottom:0; overflow:hidden; box-shadow:0 24px 60px #11182715; }
.idp-cta::after { content:""; position:absolute; width:180px; height:180px; right:17%; top:-110px; border:34px solid #ffffff0a; border-radius:50%; }
.idp-cta-copy { position:relative; z-index:1; }
.idp-cta-copy > span { display:block; color:#91b7ff; font-family:"DM Mono",monospace; font-size:10px; letter-spacing:1.5px; margin-bottom:10px; }
.idp-cta-wrap { padding-top:12px; padding-bottom:80px; content-visibility:auto; contain-intrinsic-size:auto 320px; }
.idp-cta h2 { font-family:"DM Serif Display",Georgia,serif; font-size:32px; font-weight:400; letter-spacing:-.5px; margin:0 0 8px; line-height:1.2; }
.idp-cta p { font-size:16px; line-height:1.6; color:#c5d0e0; margin:0; }
.idp-cta .idp-button { flex-shrink:0; }
.idp-button-light,.idp-nav a.idp-button-light { position:relative; z-index:1; background:#fff; border-color:#fff; color:#172b50; }
.idp-button-light:hover,.idp-nav a.idp-button-light:hover { background:#eef4ff; border-color:#eef4ff; color:#172b50; }
.idp-footer { border-top:1px solid var(--idp-line); background:#ffffffb8; padding:48px 0 28px; }
.idp-footer-grid { display:grid; grid-template-columns:minmax(230px,1.1fr) minmax(135px,.62fr) minmax(250px,1.22fr) minmax(190px,.9fr); gap:42px; align-items:start; }
.idp-footer-brand { max-width:280px; }
.idp-footer-brand .idp-brand img { width:30px; height:30px; }
.idp-footer-brand .idp-brand-name { font-size:19px; letter-spacing:-.45px; transform:translateY(.18em); }
.idp-footer-brand p { color:var(--idp-muted); font-size:13.5px; line-height:1.7; margin:17px 0 0; }
.idp-footer-group h2 { margin:5px 0 17px; color:var(--idp-ink); font-family:"DM Mono",monospace; font-size:11px; font-weight:400; letter-spacing:1.2px; line-height:1.4; text-transform:uppercase; }
.idp-footer-group nav { display:grid; gap:9px; }
.idp-footer a { color:var(--idp-muted); text-decoration:none; font-size:13px; line-height:1.45; }
.idp-footer a:hover { color:var(--idp-blue); }
.idp-footer .idp-brand { color:var(--idp-ink); }
.idp-footer .idp-brand:hover { color:var(--idp-ink); }
.idp-footer .idp-brand:hover .idp-brand-name span { color:var(--idp-red); }
.idp-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:34px; padding-top:23px; border-top:1px solid var(--idp-line); color:var(--idp-muted); font-size:12.5px; }
.idp-footer-bottom p { margin:0; }
.idp-footer-legal { display:flex; align-items:center; gap:20px; }
.idp-footer-bottom a { color:var(--idp-muted); font-size:12.5px; }
.idp-footer-socials { display:flex; align-items:center; gap:12px; margin-left:2px; }
.idp-footer-social { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border:0; border-radius:0; opacity:.82; text-decoration:none; transition:opacity .2s,transform .2s; }
.idp-footer-social:hover { opacity:1; transform:translateY(-1px); }
.idp-footer-social i { display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; font-size:16.8px; }
.idp-fa-brands { font-family:"Font Awesome 6 Brands"; font-style:normal; font-weight:400; line-height:1; }
.idp-fa-facebook-f::before { content:"\f39e"; color:#1877f2; }
.idp-fa-x-twitter::before { content:"\e61b"; color:#111827; }
.idp-fa-linkedin::before { content:"\f08c"; color:#0a66c2; }
.idp-reading { width:min(760px,calc(100% - 48px)); margin-inline:auto; padding-top:55px; }
.idp-post-header { padding-block:52px 38px; }
.idp-post-header .idp-breadcrumb { margin-bottom:30px; }
.idp-post-header > .wp-block-post-terms { font-family:"DM Mono",monospace; font-size:12px; letter-spacing:.7px; text-transform:uppercase; margin-bottom:18px; }
.idp-post-header > .wp-block-post-terms a { display:inline-block; padding:5px 11px; background:#e7eefc; color:#1d4ed8; text-decoration:none; border-radius:5px; }
.idp-post-header > .wp-block-post-title { font-family:"DM Serif Display",Georgia,serif; font-size:clamp(40px,5vw,68px); font-weight:400; line-height:1.07; letter-spacing:-1.6px; max-width:1120px; margin:0 0 23px; overflow-wrap:anywhere; }
.idp-post-header > .wp-block-post-date { color:var(--idp-muted); font-size:14px; margin:0; }
.idp-article-layout { display:grid; grid-template-columns:minmax(0,820px) 280px; gap:38px; align-items:start; padding-bottom:35px; }
.idp-article-body { min-width:0; padding:52px 64px 0; border:1px solid var(--idp-line); border-radius:16px; background:white; box-shadow:0 18px 50px #11182708; }
.idp-article-body > .wp-block-post-featured-image { margin:0 0 38px; }
.idp-article-body > .wp-block-post-featured-image img { border-radius:8px; }
.idp-article-body .idp-prose > p:first-child { font-size:21px; line-height:1.75; color:#374151; }
.idp-article-body .idp-article-end { padding-block:25px 32px; margin-top:40px; }
.idp-article-end:not(:has(a)) { border-top:0; margin-top:0; padding-block:0 24px; }
.idp-article-sidebar { position:sticky; top:130px; }
.admin-bar .idp-article-sidebar { top:162px; }
.idp-sidebar-card { padding:28px; border:1px solid #cad8ee; border-radius:16px; background:linear-gradient(155deg,#fff,#edf4ff); box-shadow:0 16px 45px #172b500a; }
.idp-sidebar-card > img { width:38px; height:38px; margin-bottom:24px; }
.idp-sidebar-card .idp-eyebrow { margin-bottom:9px; }
.idp-sidebar-card h2 { margin:0 0 12px; font-family:"DM Serif Display",Georgia,serif; font-size:28px; font-weight:400; line-height:1.12; }
.idp-sidebar-card > p:not(.idp-eyebrow) { margin:0 0 22px; color:var(--idp-muted); font-size:14px; line-height:1.65; }
.idp-sidebar-card .idp-button { width:100%; padding-inline:12px; }
.idp-sidebar-link { display:flex; justify-content:space-between; gap:8px; color:#344156; font-size:13px; font-weight:600; text-decoration:none; margin-top:18px; }
.idp-sidebar-link:hover { color:var(--idp-blue); }
.idp-discussion { padding-top:12px; padding-bottom:20px; }
.idp-comments .wp-block-comment-template > li { padding:24px; border:1px solid var(--idp-line); border-radius:8px; background:white; margin-bottom:20px; }
.idp-comments .wp-block-comment-date { font-size:13px; color:var(--idp-muted); margin-top:4px; }
.idp-comments .wp-block-comment-author-name { font-weight:600; }
.idp-comments .comment-reply-title { font-family:"DM Serif Display",Georgia,serif; font-size:30px; font-weight:400; }
.idp-comments .comment-form-comment textarea { width:100%; }
.idp-comments .comment-form label { display:block; margin-bottom:6px; }
.idp-comments .comment-form-cookies-consent label { display:inline; margin-left:7px; }
.idp-latest .idp-post-grid > li:first-child { grid-column:span 2; }
.idp-latest .idp-post-grid > li:first-child .wp-block-post-title { font-size:36px; max-width:660px; }
.idp-latest .idp-post-grid > li:first-child .wp-block-post-featured-image img { aspect-ratio:2/1; }
.idp-breadcrumb { font-family:"DM Mono",monospace; font-size:12px; color:var(--idp-muted); margin-bottom:35px; }
.idp-breadcrumb a { color:var(--idp-blue); text-decoration:none; }
.idp-reading > .wp-block-post-title { font-family:"DM Serif Display",Georgia,serif; font-size:clamp(38px,4.6vw,62px); line-height:1.1; letter-spacing:-1.5px; font-weight:400; margin:16px 0 22px; overflow-wrap:anywhere; }
.idp-reading > .wp-block-post-terms { color:var(--idp-blue); font-size:14px; }
.idp-reading > .wp-block-post-date { color:var(--idp-muted); font-size:14px; border-bottom:1px solid var(--idp-line); padding-bottom:28px; margin-bottom:35px; }
.idp-reading > .wp-block-post-featured-image { margin-block:30px; }
.idp-reading > .wp-block-post-featured-image img { border-radius:10px; }
.idp-prose { font-size:18px; line-height:1.82; overflow-wrap:anywhere; color:#202b3c; }
.idp-prose > * { margin-block:0 1.3em; }
.idp-prose h2,.idp-prose h3,.idp-prose h4 { color:var(--idp-ink); line-height:1.22; margin-top:1.75em; }
.idp-prose h2 { padding-top:.2em; font-family:"DM Serif Display",Georgia,serif; font-size:34px; font-weight:400; letter-spacing:-.6px; }
.idp-prose h2:not(:first-child) { border-top:1px solid #e6ebf2; padding-top:1em; }
.idp-prose h3 { font-size:23px; }
.idp-prose ul,.idp-prose ol { padding-left:1.35em; }
.idp-prose li { margin-bottom:.65em; padding-left:.25em; }
.idp-prose li::marker { color:var(--idp-blue); font-weight:700; }
.idp-prose img { border-radius:8px; }
.idp-prose figcaption { font-size:14px; color:var(--idp-muted); }
.idp-prose blockquote { border:1px solid #cbdaf4; border-left:4px solid var(--idp-blue); border-radius:0 10px 10px 0; padding:21px 24px; margin:2em 0; background:#f4f8ff; color:#1c2c48; font-size:20px; line-height:1.55; font-family:"DM Serif Display",Georgia,serif; }
.idp-prose a { color:#1f5ed6; text-decoration-thickness:1px; }
.idp-prose a:hover { color:#123f99; }
.idp-prose pre { overflow-x:auto; background:#15213b; color:#e4ebf6; padding:24px; border-radius:8px; font-size:15px; white-space:pre; }
.idp-prose :not(pre)>code { font-size:.85em; background:#e8edf6; padding:3px 6px; border-radius:4px; }
.idp-prose table { border-collapse:collapse; width:100%; font-size:16px; }
.idp-prose td,.idp-prose th { border:1px solid var(--idp-line); padding:12px; text-align:left; }
.idp-prose .wp-block-table { overflow-x:auto; }
.idp-article-end { padding-block:32px 55px; border-top:1px solid var(--idp-line); margin-top:45px; }
.idp-post-navigation { display:flex; justify-content:space-between; gap:30px; font-size:15px; }
.idp-post-navigation > * { max-width:48%; }
.idp-comments { margin:30px 0 55px; font-size:16px; }
.idp-comments h2 { font-size:28px; }
.idp-comments textarea,.idp-comments input:not([type=checkbox]):not([type=submit]) { border:1px solid #c9d2df; border-radius:5px; padding:10px; font:inherit; max-width:100%; }
.idp-comments .submit { background:var(--idp-blue); color:#fff; border:0; padding:13px 22px; border-radius:6px; font:inherit; cursor:pointer; }
.idp-archive { padding-top:55px; padding-bottom:65px; }
.idp-archive > .wp-block-query-title { font-family:"DM Serif Display",Georgia,serif; font-size:clamp(36px,4vw,56px); line-height:1.15; font-weight:400; letter-spacing:-1px; margin-bottom:30px; }
.idp-notfound { max-width:700px; padding-block:100px; }
.idp-notfound h1 { font-family:"DM Serif Display",Georgia,serif; font-size:clamp(42px,5vw,64px); font-weight:400; line-height:1.1; margin:0 0 25px; }
.idp-notfound p { color:var(--idp-muted); font-size:18px; line-height:1.7; margin-bottom:28px; }
@media (min-width:1400px) { .idp-hero { padding-top:85px; } }
@media (max-width:1000px) {
 .idp-shell { width:calc(100% - 48px); }
 .idp-header-inner { gap:20px; }
 .idp-nav { gap:18px; }
 .idp-nav a { font-size:14px; }
 .idp-brand-name { font-size:21px; }
 .idp-hero { gap:35px; }
 .idp-hero h1 { font-size:58px; }
 .idp-feature-copy { padding:30px; }
 .idp-guide { grid-template-columns:24px 1fr; gap:8px; }
 .idp-guide + .idp-guide { padding-left:16px; }
 .idp-post-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .idp-article-layout { grid-template-columns:minmax(0,1fr) 245px; gap:24px; }
 .idp-article-body { padding-inline:42px; }
 .idp-sidebar-card { padding:22px; }
 .idp-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
 .admin-bar .idp-header { top:46px; }
 .idp-header { background:#fff; -webkit-backdrop-filter:none; backdrop-filter:none; }
 .idp-header-inner { min-height:72px; justify-content:space-between; gap:10px; width:calc(100% - 32px); flex-wrap:nowrap; }
 .idp-brand { gap:7px; }
 .idp-brand img { width:32px; height:32px; }
 .idp-brand-name { font-size:18px; letter-spacing:-.5px; }
 .idp-brand-lockup { min-width:0; }
 .idp-footer .idp-brand-name { font-size:22px; }
 .idp-header-inner > .idp-nav { display:none; }
 .idp-mobile-nav { display:block; position:relative; margin-left:auto; }
 .idp-mobile-nav summary { cursor:pointer; font-size:13px; font-weight:600; padding:10px 0 10px 4px; list-style:none; white-space:nowrap; }
 .idp-mobile-nav summary::-webkit-details-marker { display:none; }
 .idp-mobile-nav summary::after { content:"⌄"; margin-left:5px; color:var(--idp-muted); }
 .idp-mobile-nav .idp-nav { position:absolute; right:0; top:45px; z-index:20; min-width:250px; padding:14px; background:#fff; border:1px solid var(--idp-line); border-radius:12px; box-shadow:0 16px 30px #11182715; display:flex; flex-direction:column; align-items:stretch; gap:4px; }
 .idp-mobile-nav .idp-nav a { padding:11px 12px; border-radius:7px; }
 .idp-mobile-nav .idp-selected { box-shadow:none; }
 .idp-home-main { padding-top:18px; }
 .idp-hero { grid-template-columns:1fr; padding:42px 28px 34px; gap:22px; margin:0 0 42px; border-radius:16px; }
 .idp-hero h1 { font-size:clamp(43px,10vw,62px); letter-spacing:-1.5px; }
 .idp-eyebrow { font-size:11px; margin-bottom:18px; }
 .idp-hero-intro p { font-size:16px; max-width:480px; margin-bottom:15px; }
 .idp-feature { grid-template-columns:1fr; margin-bottom:32px; }
 .idp-feature-art { min-height:260px; }
 .idp-feature-copy { padding:28px; }
 .idp-feature-copy h2 { font-size:34px; }
 .idp-art-label { left:16px; right:16px; bottom:16px; padding:13px; }
 .idp-art-label span { display:none; }
 .idp-guide-grid { grid-template-columns:1fr; }
 .idp-guide,.idp-guide + .idp-guide { padding:20px 0; border-left:0; }
 .idp-guide + .idp-guide { border-top:1px solid var(--idp-line); }
 .idp-guides { margin-bottom:45px; }
 .idp-section-heading { flex-direction:column; align-items:stretch; gap:20px; }
 .idp-section-heading h2 { font-size:34px; }
 .idp-section-intro { font-size:14px; }
 .idp-section-heading .wp-block-search { width:100%; }
 .idp-post-grid { grid-template-columns:1fr!important; }
 .idp-latest .idp-post-grid > li:first-child { grid-column:auto; }
 .idp-latest .idp-post-grid > li:first-child .wp-block-post-title { font-size:30px; }
 .idp-latest { margin-bottom:45px; }
 .idp-cta { flex-direction:column; align-items:flex-start; padding:32px 28px; margin-bottom:0; gap:23px; }
 .idp-cta-wrap { padding-bottom:52px; }
 .idp-cta h2 { font-size:29px; }
 .idp-footer { padding-top:40px; }
 .idp-footer-grid { grid-template-columns:1fr; gap:32px; }
 .idp-footer-brand { max-width:420px; }
 .idp-footer-group h2 { margin-bottom:13px; }
 .idp-footer-bottom { flex-direction:column; align-items:flex-start; }
 .idp-footer-legal { flex-wrap:wrap; gap:14px 18px; }
 .idp-reading { padding-top:35px; }
 .idp-post-header { padding-block:35px 28px; }
 .idp-post-header > .wp-block-post-title { font-size:42px; letter-spacing:-1px; }
 .idp-article-layout { display:block; padding-bottom:20px; }
 .idp-article-body { padding:28px 24px 0; }
 .idp-article-sidebar { position:static; margin-top:24px; }
 .idp-sidebar-card { padding:26px; }
 .idp-article-sidebar { position:static; margin-top:24px; }
 .idp-article-body .idp-prose > p:first-child { font-size:19px; }
 .idp-discussion { padding-top:10px; }
 .idp-prose { font-size:18px; line-height:1.75; }
 .idp-prose h2 { font-size:30px; }
 .idp-post-navigation { flex-direction:column; gap:20px; }
 .idp-post-navigation > * { max-width:100%; }
}
@media (min-width:761px) and (max-width:900px) {
 .idp-brand-name { font-size:19px; }
 .idp-nav { gap:14px; }
 .idp-nav a.idp-button { padding:11px 13px; }
}
@media (max-width:380px) {
 .idp-header-inner { width:calc(100% - 20px); gap:4px; }
 .idp-brand { gap:4px; }
 .idp-brand-name { font-size:12.5px; letter-spacing:-.45px; }
 .idp-brand img { width:24px; height:24px; }
 .idp-language-switcher summary { padding:7px; }
 .idp-language-switcher summary::after { display:none; }
 .idp-language-flag { width:22px; height:16px; }
 .idp-mobile-nav summary { padding-left:0; font-size:11.5px; }
 .idp-mobile-nav summary::after { margin-left:3px; }
 .idp-hero { padding-inline:22px; }
}
@media (max-width:1000px) {
 .idp-language-switcher summary { min-width:auto; padding:8px 10px; }
 .idp-language-switcher summary span { display:none; }
}
@media (max-width:760px) {
 .idp-language-menu { position:fixed; top:82px; left:14px; right:14px; width:auto; }
 .admin-bar .idp-language-menu { top:114px; }
}
@media (max-width:380px) {
 .idp-language-menu { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
