/*
Theme Name: Picazor
Author: Picazor
Description: A fast, SEO-focused, multi-page theme for the Picazor website. Works with Rank Math, Yoast SEO and All in One SEO, and falls back to its own meta tags, Open Graph and JSON-LD schema when no SEO plugin is active. No page builder needed.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
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: picazor
Tags: blog, one-column, custom-menu, featured-images, translation-ready, accessibility-ready
*/

:root {
  --radius: 0.375rem;
  --coral: oklch(0.65 0.19 28);
  --ink: oklch(0.19 0.012 260);
  --surface: oklch(1 0 0);
  --background: oklch(0.985 0.004 90);
  --foreground: oklch(0.19 0.012 260);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.129 0.042 264.695);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.129 0.042 264.695);
  --primary: oklch(0.42 0.2 262);
  --primary-foreground: oklch(0.99 0 0);
  --secondary: oklch(0.95 0.012 260);
  --secondary-foreground: oklch(0.208 0.042 265.755);
  --muted: oklch(0.968 0.007 247.896);
  --muted-foreground: oklch(0.554 0.046 257.417);
  --accent: oklch(0.88 0.09 27);
  --accent-foreground: oklch(0.208 0.042 265.755);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(0.984 0.003 247.858);
  --border: oklch(0.86 0.012 260);
  --input: oklch(0.929 0.013 255.508);
  --ring: oklch(0.704 0.04 256.788);
  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);
  --sidebar: oklch(0.984 0.003 247.858);
  --sidebar-foreground: oklch(0.129 0.042 264.695);
  --sidebar-primary: oklch(0.208 0.042 265.755);
  --sidebar-primary-foreground: oklch(0.984 0.003 247.858);
  --sidebar-accent: oklch(0.968 0.007 247.896);
  --sidebar-accent-foreground: oklch(0.208 0.042 265.755);
  --sidebar-border: oklch(0.929 0.013 255.508);
  --sidebar-ring: oklch(0.704 0.04 256.788);
  --font-display: "Manrope", ui-sans-serif, system-ui, sans-serif;
  --font-body: "DM Sans", ui-sans-serif, system-ui, sans-serif;
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box;border:0 solid var(--border)}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4}
body{margin:0;background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}
p,figure,blockquote,dl,dd{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
a{color:inherit;text-decoration:inherit}
img,svg,video{display:block;max-width:100%;height:auto}
button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit;margin:0}
button{background:transparent;padding:0;cursor:pointer;-webkit-appearance:button}
textarea{resize:vertical}
summary{display:list-item}
table{border-collapse:collapse}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--primary);color:var(--primary-foreground);padding:10px 16px;border-radius:4px;font-weight:700}
.skip-link:focus{left:8px}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:4px;font-size:14px;font-weight:500;line-height:1.25;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;height:36px;padding:8px 16px;background:var(--primary);color:var(--primary-foreground);box-shadow:0 1px 3px rgb(0 0 0/.1),0 1px 2px -1px rgb(0 0 0/.1)}
.btn:hover{background:color-mix(in oklab,var(--primary) 90%,transparent)}
.btn svg{width:16px;height:16px;flex:none}
.btn-sm{height:32px;padding:0 12px;font-size:12px}
.btn-lg{height:40px;padding:0 32px}
.btn-icon{width:36px;padding:0}
.btn-ghost{background:transparent;color:var(--foreground);box-shadow:none}
.btn-ghost:hover{background:var(--accent);color:var(--accent-foreground)}
.btn-light{background:var(--primary-foreground);color:var(--primary)}
.btn-light:hover{background:var(--secondary)}
.btn-ondark{background:transparent;color:var(--primary-foreground);border:1px solid color-mix(in oklab,var(--primary-foreground) 70%,transparent);box-shadow:none}
.btn-ondark:hover{background:color-mix(in oklab,var(--primary-foreground) 15%,transparent)}
.btn-outline{background:var(--background);color:var(--foreground);border:1px solid var(--input);box-shadow:0 1px 2px rgb(0 0 0/.05)}
.btn-outline:hover{background:var(--accent);color:var(--accent-foreground)}

/* ---- Design (converted from the Lovable build) ---- */
html { scroll-behavior: smooth; }
body { font-family: var(--font-body); }
h1,h2,h3,h4,.logo { font-family: var(--font-display); letter-spacing: 0; }
a,button,input,textarea { outline-offset: 3px; }
:focus-visible { outline: 2px solid var(--primary); }
::selection { background: var(--accent); color: var(--foreground); }
.container { width: min(100% - 48px, 1200px); margin-inline: auto; }
.site-header { position: sticky; top: 0; z-index: 30; background: color-mix(in oklab,var(--background) 94%,transparent); backdrop-filter: blur(16px); border-bottom: 1px solid var(--border); }
.header-inner { display:flex; align-items:center; justify-content:space-between; min-height:76px; gap:24px; }
.logo { display:inline-flex; align-items:center; gap:9px; font-weight:800; font-size:23px; color:var(--foreground); white-space:nowrap; }
.logo svg { color:var(--primary); flex:none; }.logo-dot { color:var(--coral); }
.desktop-nav { display:flex; align-items:center; gap:28px; }.desktop-nav a {font-size:13px;font-weight:650;color:var(--muted-foreground);transition:color .2s}.desktop-nav a:hover,.desktop-nav a.is-active {color:var(--primary)}
.header-actions {display:flex;align-items:center;gap:8px}.mobile-toggle {display:none!important}.mobile-nav {display:none}
.eyebrow {display:block;color:var(--primary);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}
.hero {position:relative;min-height:min(670px,75vh);display:flex;align-items:end;overflow:hidden;background:var(--ink);color:var(--primary-foreground)}
.hero-image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero:after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in oklab,var(--ink) 83%,transparent),color-mix(in oklab,var(--ink) 37%,transparent) 54%,transparent)}
.hero-content {position:relative;z-index:1;padding-block:110px 80px}.hero .eyebrow {color:var(--accent)}.hero h1 {font-size:clamp(46px,6vw,88px);font-weight:800;line-height:1.04;max-width:750px;margin:20px 0 24px}.hero p {max-width:540px;font-size:18px;line-height:1.7;color:color-mix(in oklab,var(--primary-foreground) 85%,transparent)}.hero-actions {display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-meta {display:flex;gap:38px;margin-top:72px;color:var(--primary-foreground);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.hero-meta span:before {content:"•";color:var(--accent);margin-right:10px}
.section {padding-block:100px}.section-alt {background:var(--surface)}.section-heading {display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.section-heading h2,.related h2 {font-size:clamp(32px,4vw,52px);line-height:1.12;font-weight:800;max-width:640px;margin-top:14px}.section-heading p {max-width:370px;color:var(--muted-foreground);line-height:1.7}.section-heading a,.text-arrow {display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:750;color:var(--primary)}
.feature-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-card,.post-card {display:block;background:var(--surface);border:1px solid var(--border);overflow:hidden;transition:transform .25s,border-color .25s}.feature-card:hover,.post-card:hover {transform:translateY(-4px);border-color:var(--primary)}.image-wrap {overflow:hidden;background:var(--secondary);aspect-ratio:3/2}.image-wrap img {width:100%;height:100%;object-fit:cover;transition:transform .45s}.feature-card:hover img,.post-card:hover img {transform:scale(1.035)}.feature-card-body,.post-card-body {padding:26px}.feature-card-body {position:relative}.feature-card-body>svg {position:absolute;right:26px;top:24px;color:var(--primary)}.feature-card h3,.post-card h3 {font-size:23px;line-height:1.25;font-weight:800;margin:22px 0 12px}.feature-card p,.post-card p {font-size:14px;line-height:1.7;color:var(--muted-foreground)}
.split-section {display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.split-section img {width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.split-copy h2 {font-size:clamp(34px,4vw,56px);font-weight:800;line-height:1.13;margin:18px 0 22px}.split-copy p {color:var(--muted-foreground);font-size:16px;line-height:1.8;margin-bottom:18px}.steps {display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}.step {border-top:2px solid var(--primary);padding-top:20px}.step span {font-family:var(--font-display);font-size:45px;font-weight:800;color:var(--coral)}.step h3 {font-size:22px;font-weight:800;margin:15px 0 10px}.step p {color:var(--muted-foreground);line-height:1.7;font-size:14px}
.post-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.post-card h3 {min-height:58px}.read-link {display:inline-flex;align-items:center;gap:7px;margin-top:22px;color:var(--primary);font-size:13px;font-weight:800}
.page-intro {padding-block:42px 74px}.breadcrumbs {display:flex;gap:9px;flex-wrap:wrap;color:var(--muted-foreground);font-size:12px;margin-bottom:60px}.breadcrumbs a:hover {color:var(--primary)}.page-intro h1 {font-size:clamp(42px,6vw,78px);line-height:1.08;font-weight:800;max-width:860px;margin:18px 0 23px}.lead {font-size:clamp(17px,2vw,21px);line-height:1.65;max-width:750px;color:var(--muted-foreground)}
.page-cover {width:100%;height:auto;aspect-ratio:2.25;object-fit:cover;display:block}.body-layout {display:grid;grid-template-columns:minmax(0,760px) minmax(180px,260px);justify-content:space-between;gap:80px;padding-block:68px 100px}.prose-sections section {margin-bottom:48px;scroll-margin-top:110px}.prose-sections h2 {font-size:clamp(27px,3vw,38px);line-height:1.2;font-weight:800;margin-bottom:20px}.prose-sections h3 {font-size:21px;font-weight:750;margin:28px 0 12px}.prose-sections p,.prose-sections li {font-size:16px;line-height:1.85;color:var(--muted-foreground);margin-bottom:17px}.prose-sections ul {padding-left:23px;list-style:disc;margin-bottom:22px}.toc {align-self:start;position:sticky;top:108px;border-left:1px solid var(--border);padding-left:22px}.toc strong {display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}.toc a {display:block;font-size:13px;line-height:1.55;color:var(--muted-foreground);margin-bottom:12px}.toc a:hover {color:var(--primary)}
.related {border-top:1px solid var(--border);padding-block:65px 90px}.related-links {display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.related-links a {border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:12px;padding-top:18px;font-weight:750}.related-links a:hover {color:var(--primary)}
.cta-band {background:var(--primary);color:var(--primary-foreground);padding-block:70px}.cta-inner {display:flex;justify-content:space-between;align-items:center;gap:32px}.cta-band .eyebrow {color:var(--accent)}.cta-band h2 {font-size:clamp(30px,4vw,48px);font-weight:800;line-height:1.15;margin:13px 0 14px}.cta-band p {color:color-mix(in oklab,var(--primary-foreground) 80%,transparent);max-width:530px;line-height:1.7}
.site-footer {background:var(--ink);color:var(--primary-foreground);padding-top:70px}.site-footer .logo {color:var(--primary-foreground)}.footer-top {display:flex;justify-content:space-between;gap:30px;padding-bottom:55px;border-bottom:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent)}.footer-top p {font-size:14px;line-height:1.8;margin-top:18px;color:color-mix(in oklab,var(--primary-foreground) 65%,transparent)}.footer-action {display:flex;flex-direction:column;gap:10px}.footer-action span {font-size:12px;color:color-mix(in oklab,var(--primary-foreground) 65%,transparent)}.footer-action a {display:flex;align-items:center;gap:10px;font-size:25px;font-weight:800}.footer-links {display:grid;grid-template-columns:1.2fr 1fr 1.5fr 1fr;gap:35px;padding:55px 0}.footer-links>div {display:flex;flex-direction:column;gap:12px}.footer-links strong {font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.footer-links a {font-size:13px;line-height:1.5;color:color-mix(in oklab,var(--primary-foreground) 65%,transparent)}.footer-links a:hover {color:var(--primary-foreground)}.footer-bottom {display:flex;justify-content:space-between;gap:20px;border-top:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent);padding:22px 0;font-size:12px;color:color-mix(in oklab,var(--primary-foreground) 55%,transparent)}
.faq-list {max-width:850px;margin:0 auto 100px}.faq-item {border-bottom:1px solid var(--border);padding:22px 0}.faq-item summary {cursor:pointer;font-family:var(--font-display);font-weight:750;font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-item summary::-webkit-details-marker {display:none}.faq-item summary:after {content:'+';color:var(--primary);font-size:25px;font-weight:400}.faq-item[open] summary:after {content:'−'}.faq-item p {margin-top:15px;color:var(--muted-foreground);line-height:1.75;max-width:700px}
.contact-layout {display:grid;grid-template-columns:1fr 1.3fr;gap:10%;padding-bottom:100px}.contact-layout h2 {font-size:35px;font-weight:800;margin-bottom:18px}.contact-layout p {color:var(--muted-foreground);line-height:1.8}.contact-form {background:var(--surface);border:1px solid var(--border);padding:34px;display:grid;gap:18px}.field {display:grid;gap:8px}.field label {font-size:13px;font-weight:750}.field input,.field textarea {border:1px solid var(--border);background:var(--background);width:100%;padding:12px 14px;border-radius:4px;outline:none}.field input:focus,.field textarea:focus {border-color:var(--primary)}.field textarea {min-height:160px;resize:vertical}.form-note {font-size:12px;color:var(--muted-foreground);line-height:1.5}.form-success {background:var(--secondary);border-left:3px solid var(--primary);padding:16px;line-height:1.6}
.article-meta {display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--muted-foreground);margin-top:25px}.share-links {display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:24px}.share-links a {font-size:13px;font-weight:750;color:var(--primary)}
@media(max-width:1000px) {.desktop-nav {gap:14px}.desktop-nav a {font-size:12px}.feature-grid,.post-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.body-layout {gap:35px}}
@media(max-width:760px) {.container {width:min(100% - 36px,1200px)}.header-inner {min-height:66px}.desktop-nav {display:none}.mobile-toggle {display:inline-flex!important}.mobile-nav {display:grid;position:absolute;top:100%;left:0;right:0;background:var(--background);border-bottom:1px solid var(--border);padding:12px 18px 24px;box-shadow:0 20px 30px color-mix(in oklab,var(--ink) 12%,transparent);max-height:calc(100vh - 66px);overflow:auto}.mobile-nav a {display:flex;justify-content:space-between;padding:12px 4px;border-bottom:1px solid var(--border);font-weight:700}.hero {min-height:610px}.hero:after {background:linear-gradient(0deg,color-mix(in oklab,var(--ink) 89%,transparent),color-mix(in oklab,var(--ink) 30%,transparent) 80%)}.hero-content {padding-block:80px 45px}.hero h1 {font-size:48px}.hero p {font-size:16px}.hero-meta {margin-top:45px;gap:16px;flex-wrap:wrap}.section {padding-block:70px}.section-heading {display:block}.section-heading p {margin-top:18px}.feature-grid,.post-grid,.steps,.related-links {grid-template-columns:1fr}.split-section {grid-template-columns:1fr;gap:30px}.split-section img {order:-1}.page-intro {padding-bottom:50px}.breadcrumbs {margin-bottom:42px}.body-layout {grid-template-columns:1fr;padding-block:45px 55px}.toc {position:static;order:-1}.toc a {display:inline-block;margin-right:18px}.page-cover {aspect-ratio:1.35}.cta-inner {display:block}.cta-inner .button {margin-top:22px}.footer-links {grid-template-columns:repeat(2,1fr);gap:40px 20px}.footer-top,.footer-bottom {display:block}.footer-action {margin-top:32px}.footer-bottom span {display:block;margin-bottom:8px}.contact-layout {grid-template-columns:1fr;gap:28px}.contact-form {padding:22px}}
@media(max-width:390px) {.header-actions>a {display:none}.hero h1 {font-size:42px}.hero-meta {font-size:10px}.page-intro h1 {font-size:39px}}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto}*,*:before,*:after {transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* ---- WordPress / theme additions ---- */
.admin-bar .site-header{top:32px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
.mobile-nav[hidden]{display:none!important}
.prose-sections>*:first-child{margin-top:0}
.prose-sections h2{margin-top:48px;scroll-margin-top:110px}
.prose-sections>h2:first-child{margin-top:0}
.prose-sections a,.inline-links a{color:var(--primary);text-decoration:underline}
.prose-sections ol{padding-left:23px;list-style:decimal;margin-bottom:22px}
.prose-sections img{height:auto;margin-block:24px}
.prose-sections blockquote{border-left:3px solid var(--primary);padding-left:20px;margin:24px 0;color:var(--muted-foreground)}
.body-layout.no-toc{grid-template-columns:minmax(0,760px)}
.toc .toc-extra{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);font-weight:700;color:var(--primary)}
.faq-list .wp-block-details{border-bottom:1px solid var(--border);padding:22px 0}
.faq-list .wp-block-details summary{cursor:pointer;font-family:var(--font-display);font-weight:750;font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq-list .wp-block-details summary::-webkit-details-marker{display:none}
.faq-list .wp-block-details summary:after{content:'+';color:var(--primary);font-size:25px;font-weight:400}
.faq-list .wp-block-details[open] summary:after{content:'−'}
.faq-list .wp-block-details p{margin-top:15px;color:var(--muted-foreground);line-height:1.75;max-width:700px}
.contact-layout .contact-copy p{margin-bottom:18px}
.contact-layout .contact-copy a{color:var(--primary);text-decoration:underline}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-error{background:color-mix(in oklab,var(--destructive) 10%,var(--background));border-left:3px solid var(--destructive);padding:16px;line-height:1.6}
.features-note{max-width:672px;margin-top:40px;line-height:1.75;color:var(--muted-foreground)}
.features-note a{color:var(--primary);text-decoration:underline}
.features-wrap{padding-bottom:96px}
.notfound{text-align:center;padding-block:112px;min-height:65vh}
.notfound h1{margin-top:20px;font-family:var(--font-display);font-size:clamp(40px,7vw,72px);font-weight:800;line-height:1.1}
.notfound p.lead{margin:24px auto 0;font-size:18px;line-height:2rem}
.notfound .notfound-actions{display:flex;justify-content:center;gap:16px;margin-top:36px;flex-wrap:wrap}
.notfound .related-links{max-width:768px;margin:80px auto 0}
.pagination-wrap{padding-bottom:96px}
.pagination-wrap .nav-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.pagination-wrap .page-numbers{padding:8px 14px;border:1px solid var(--border);border-radius:4px;font-weight:700;font-size:14px}
.pagination-wrap .page-numbers.current,.pagination-wrap a.page-numbers:hover{border-color:var(--primary);color:var(--primary)}
.empty-state{padding-bottom:96px;color:var(--muted-foreground)}
.logo img{max-height:40px;width:auto}
.wp-block-image img{height:auto}
.alignleft{float:left;margin:0 24px 16px 0}.alignright{float:right;margin:0 0 16px 24px}.aligncenter{margin-inline:auto}
